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 - 首发博客园

原文地址:https://www.cnblogs.com/xunziji/p/2085462.html