Sql Server 系统存储过程分析 1 - 目录存储过程
1. sp_databases
定 义:返回在 Sql Server 实例中的数据库或可以 通过数据库网关访问的数据库
结果集:DataBase_Name、DataBase_Size、ReMarks(对于数据库引擎,此字段始终返回 NULL)
备注:需要 create database 或 alter any database 或 view any definition 权限,并且必须有该数据库的访问权。 通俗易懂,且适合大多数情况下,需要执行当前存储过程的用户为管理员权限
2. sp_tables
定义:返回可在当前环境中查询的对象列表。也就是说,返回任何能够在 FROM 子句中出现的对象(不包括同义词对象)。
返回当前数据库的 数据表或视图
结果集:table_qualifier、table_owner(dbo or sys or information_schema)、table_name、table_type(table or view)、remarks
备注:执行用户需要有当前数据库的 select 权限,并且,用户只能查询 sp_tables 中的 table_owner 为 dbo 的表
3. sp_statistics
定义:返回针对指定的表或索引视图的所有索引和统计信息的列表,用于观察表的索引情况,很有用
格式:sp_statistics 'table1'
结果集:Type 0 = 数据表、1 = 聚集索引、3 = 非聚集索引
4. sp_server_info
定义:返回 SQL Server、数据库网关或基础数据源的属性名称和匹配值的列表。
备注:查看 Sql Server一些基本信息,不是太有用
5. sp_columns
定义:返回当前环境中可查询的指定表或视图的列信息
备注:可以比较方便的得到表的字段详细信息,如:字段名称、长度、类型、默认值 等信息
6. sp_special_columns
定义:返回一组唯一标识表中某个行的最优列。如果事务更新了行中的某个值,则还将返回自动更新的列
其实就是返回表中的聚集索引所在列
备注:查看表中聚集索引很便捷的方法
7. sp_sproc_columns
定义:为当前环境中的单个存储过程或用户定义函数返回列信息。
备注:查看 存储过程的参数 的一个好方法
8. sp_table_privileges
定义:返回指定的一个或多个表的表权限的列表,即 返回当前用户的 对该表的 INSERT、DELETE、UPDATE、SELECT、REFERENCES 权限,并且必须有该数据库的访问权。
备注:REFERENCES 为给该表创建外键的权限
9. sp_column_privileges
定义:返回当前环境中单个表的列特权信息。
备注:不是太实用,不过多的介绍了
10. sp_stored_procedures
定义:返回当前环境中的存储过程列表
备注:不是太常用,不过多的介绍
11. sp_pkeys
定义:返回当前表中的主键信息
12. sp_fkeys
定义:返回当前表中的外键信息
以上就是 sp_databases 、sp_tables、sp_statistics、sp_server_info、sp_columns、sp_special_columns、sp_sproc_columns、sp_table_privileges、sp_column_privileges、sp_stored_procedures、sp_pkeys、sp_fkeys 的相关信息,希望能对你有所帮助
寻自己 - 2011/04/18 17:35 - .Net,C#,Asp.Net - 首发博客园