1、优点,简化复杂的操作、保证了数据的完整性、简化了变更管理等。
(1)处理封装在易于使用的单元中,简化了复杂的操作;
(2)由于不需要重复建立一系列处理步骤,因此保证了数据的完整性,如果所有开发人员和应用程序都使用相同的存储过程,则所使用的代码是相同的;
(3)简化了变更管理。如名称、列名或业务逻辑发生变化,只需更改存储过程中的代码,使用它的开发人员甚至不需要了解这些变化,即具有安全性;
(4)由于存储过程比单独使用SQL语句快;
(5)存储过程可以用来编写功能更加灵活的代码。所以存储过程有三个特点:简单可重复、安全、高性能。
2、缺点,存储过程的编写比基本的SQL语句复杂,需要更高的技能、可能没有创建存储过程的权限。
数据库管理员可能会限制创建存储过程的权限,允许用户使用存储过程,而不允许用户自由创建存储过程。
实例
DELIMITER // CREATE PROCEDURE ordertotal( IN custid INT, IN taxable BOOLEAN, OUT ototal DECIMAL(8,2) )COMMENT 'obtain total order price' BEGIN /*declare variable for total*/ DECLARE total DECIMAL(8,2); DECLARE taxrate INT DEFAULT 6; /*get the order total*/ SELECT SUM(item_price*item_quantity) INTO total FROM customers WHERE cust_id = custid; /*is this taxable?*/ IF taxable THEN SELECT total+(total/100*taxrate) INTO total; END IF; SELECT total INTO ototal; END //
以上就是mysql存储过程的优缺点,希望对大家有所帮助。更多mysql学习指路:MySQL
推荐操作系统:windows7系统、mysql5.8、DELL G3电脑