在 SQL Server 中存储过程主要分为系统存储过程和用户存储过程1。
系统存储过程:由系统事先定义好,用户直接调用,可以使用系统存储过程来执行许多管理和信息活动。
用户存储过程:由用户自己定义。
在这里介绍一下常见的系统存储过程,语法格式为了方便理解,写的不是很正式,请多指教。另外不需要都记住,使用的时候查一下就好了。
1. sp_help
查看对象信息,用于查看数据库对象、用户定义数据类型或者 SQL Server 提供的数据类型信息,其语法格式为:sp_help name
例如 exec sp_help student 将返回 student 表的信息
如果只是exec sp_help 将返回当前数据库中的所有对象,如字段名、主键、约束、索引、外键,创建的存储过程,触发器等等。
2. sp_helpindex
查看索引信息,用于返回表或视图上的索引信息,其语法格式为:sp_helpindex name
exec sp_helpindex student 可以返回 student 表的索引信息。
3. sp_rename
在当前数据库中更改用户创建对象的名称,这里的对象可以是表,索引,列等。其语法格式为:
sp_rename oldname,newname
exec sp_rename Student,Teacher 将数据表’Student’改名为’Teacher’
4. sp_renamedb
修改数据库名。其语法格式为:sp_renamedb oldname,newname
exec sp_renamedb TEXT,LIANXI 将数据库“TEXT"改名为“LIANXI”
5. sp_stored_procedures
查看存储过程信息,显示存储过程列表。其语法格式为:sp_stored_procedures name
exec sp_stored_procedures getGrade 返回存储过程 getGrade 的信息。
6.sp_helpdb
查看数据库信息,其语法格式为:exec sp_helpdb name
exec sp_helpdb TEXT
可以看到所有的数据库,包括系统自带的。
7.sp_helpconstraint
查看表上的约束信息,其语法格式为:exec sp_helpconstraint name
exec sp_helpconstraint student
8.sp_helptext
显示规则、默认值、未加密的存储过程、用户定义函数、触发器或视图的文本。
exec sp_helptext getGrade 返回的是创建存储过程 getGrade 时的代码。