存储过程的设计规则
存储过程的设计规则包括以下内容:
-
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
-
其他数据库对象均可在存储过程中创建。 可以引用在同一存储过程中创建的对象,只要引用时已经创建了该对象即可。
-
可以在存储过程内引用临时表。
-
如果在存储过程内创建本地临时表,则临时表仅为该存储过程而存在;退出该存储过程后,临时表将消失。
-
如果执行的存储过程将调用另一个存储过程,则被调用的存储过程可以访问由第一个存储过程创建的所有对象,包括临时表在内。
-
如果执行对远程 Microsoft SQL Server 实例进行更改的远程存储过程,则不能回滚这些更改。远程存储过程不参与事务处理。
-
存储过程中的参数的最大数目为 2100。
-
存储过程中的局部变量的最大数目仅受可用内存的限制。
- 根据可用内存的不同,存储过程最大可达 128 MB。