Microsoft SQL Server 系统目录
Microsoft SQL Server 提供了两种获取系统信息的方法一是通过INFORMATION_SCHEMA视图二是通过系统存储过程和函数Microsoft鼓励使用INFORMATION_SCHEMA视图对于存储过程和函数(Sybase的遗留物)则不再强调并且不建议使用在获取系统消息方面对这些存储过程和函数的支持仅仅是为了向后兼容
在Microsoft SQL Server 中获取系统信息的另外一种办法就是直接查询包含了当前数据库信息的系统表表和视图例如sysobjectssysindexessysusers等MASTER数据库中的这些对象包含了关于RDBMS本身的信息尽管具有足够特权的用户可以查询这些视图和表但Microsoft强烈反对这种方法并声明这些系统表是专门供SQL Server使用的在未来发布的版本中这些系统表的名称和结构可能会发生改变Microsoft确实如此在SQL Server的每一个版本中都引入了一些新表删除一些旧表或者修改了一些表的名称笔者的建议是抵制使用这些后门的诱惑采用合法的接口来获取这些信息并按照INFORMATION_SCHEMA系统存储过程函数这样的顺序使用
Microsoft SQL Server系统存储过程和函数
Microsoft SQL Server 中的系统存储过程可以分为很多类别这取决于这些存储过程所执行的任务本章将简要地介绍一些与目录有关的存储过程
Microsoft SQL Server 列出了数十个提供系统信息的存储过程可以从SQLCMD命令行界面直接使用这些存储过程也可以从SQL Query Analyzer或者从通过某种程序设计接口访问SQL Server的客户端应用程序中使用这些存储过程这些存储过程最初的目的是实现ODBC数据字典功能以隔离ODBC应用程序避免其对SQL Server系统表的结构造成可能的修改
Microsoft SQL Server和Sybase Adaptive Server对系统存储过程的使用是独一无二的因为两者都源自一个由MicrosoftSybase和AshtonTate于年共同合作的项目INFORMATION_SCHEMA视图是在SQL Server 版本中才开始引入的
获得帮助
要获取任意一个数据库对象的信息最有用的存储过程之一就是sp_help<>类型的存储过程表列出了这些存储过程
表 Microsoft SQL Server中的sp_help< >类型的存储过程
在这些存储过程中SP_HELP可能是最常用的如果不带任何参数SP_HELP将返回当前数据库的sysobjects表中列出的每一个单独数据库对象(表视图存储过程索引默认值等)的信息如果向SP_HELP存储过程传递一个特定的对象作为参数那么它只返回与该对象有关的信息
Microsoft SQL Server 还提供了大量的函数和系统存储过程用于返回RDBMS服务器及其所包含对象的信息在Microsoft的联机文档中可以找到系统函数的完整说明
返回目录SQL实战新手入门
编辑推荐
Oracle索引技术
高性能MySQL
数据仓库与数据挖掘培训视频教程