2024年4月19日发(作者:)
SQL Server 存储过程详解
◆优点:
执行速度更快。存储过程只在创造时进行编译,而一般SQL语句每执行一次就编译一
次,所以使用存储过程执行速度更快。
存储过程用于处理复杂的操作时,程序的可读性更强、网络的负担更小。
使用存储过程封装事务性能更佳。
能有效的放注入,安全性更好。
可维护性高,在一些业务规则发生变化时,有时只需调整存储过程即可,而不用改动
和重编辑程序。
更好的代码重用。
◆ 缺点:
存储过程将给服务器带来额外的压力。
存储过程多多时维护比较困难。
移植性差,在升级到不同的数据库时比较困难。
调试麻烦,SQL语言的处理功能简单。
总之复杂的操作或需要事务操作的SQL建议使用存储过程,而参数多且操作简单SQL
语句不建议使用存储过程。
存储过程定义
存储过程是一组 Transact-SQL 语句,它们只需编译一次,以后即可多次执行。因为
Transact-SQL 语句不需要重新编译,所以执行存储过程可以提高性能。
触发器是一种特殊的存储过程,不由用户直接调用。创建触发器时,将其定义为在对
特定表或列进行特定类型的数据修改时激发。
存储过程的设计规则
CREATE PROCEDURE 定义自身可以包括任意数量和类型的 SQL 语句,但以下语句
除外。
不能在存储过程的任何位置使用这些语句。
CREATE AGGREGATE、 CREATE RULE、CREATE DEFAULT、 CREATE SCHEMA、
CREATE 或 ALTER FUNCTION、CREATE 或 ALTER TRIGGER、CREATE 或 ALTER
PROCEDURE、CREATE 或 ALTER VIEW、SET PARSEONLY、SET SHOWPLAN_ALL、
SET SHOWPLAN_TEXT、 SET SHOWPLAN_XML、USE database_name
其他数据库对象均可在存储过程中创建。可以引用在同一存储过程中创建的对象,只


发布评论