- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL Server的系统表及其应用研究的论文.doc
SQL Server的系统表及其应用研究的论文
摘要: 本文介绍了microsoft sql server数据库的系统表,并对系统中经常遇到的一个 问题 给出了通过系统表建立存储过程的解决办法。
关键词:sql server 系统表 存储过程
1. sql server的系统表
microsoft的sql server是一个可伸缩的高性能数据库管理系统,专为分布式客户机/服务器环境而设计,sql server几乎将所有的配置信息、安全性信息和对象信息都存储在了它自身的系统表中,而系统表存在于每个独立的数据库中,存储一个特定数据库对象信息的系统表通常称为数据库目录,master数据库有其特有的系统表用于保存整个系统和所有数据库的信息,通常称为服务器目录或系统目录。
服务器上所有的数据库包括module, master等都含有18个具有相同名称、结构的系统表,如表sysobjects用于描述数据库中的对象棗表、视图、存储过程等,表sysuser用于描述数据库的用户,而master数据库另外还有13个单独的全局系统表,如表syslogins用于保存每个服务器的登录名、口令和配置信息、表sysdatabase保存服务器上所有数据库名、所有者、状态及其他信息。
存储过程是内嵌于数据库中的程序代码,它与表、视图等一样是数据库的一个组成部分,不同于一般的外部程序代码,它是经过预编译处理的代码,因此具有运行速度快、效率高的特点,存储过程也是sql server的一个重要功能,许多单纯针对后台数据库的操作一般都交由存储过程来完成以提高系统效率。.本文将给出一个存储过程来说明sql server系统表的 应用 。
2. sql server系统表的应用
在应用sql server的基于客户机/服务器体系结构的信息系统开发中,有时需要将后台sql server上的某一数据库的表结构都打印出来,以便于开发人员查阅及最终文档的形成。sql server本身提供了一个系统存储过程(sp_columns),可以完成对单个表结构的查询,只要在slq server的isql-ns“表名”,并执行即可得到结果集。但该 方法 有许多不足之处,其主要缺点是:
1)只能对数据库中单个数据表进行操作,当需要查询一个数据库中所有的表时,需要多次执行系统存储过程sp_columns,因此显得非常繁琐。
2)查询结果集中???含了许多不必要的信息,缺乏使用的灵活性。
下面我们创建一个存储过程来完成对某一个数据库中所有表结构的查询。
在创建一个数据库的同时,系统会自动建立一些系统表,限于篇幅的缘故我们在这里只介绍与应用实例有关的三个系统表(sysobjects,syscolumns,systypes)及其相关的字段。 表sysobjects为数据库内创建的每个对象(约束,规则,表,视图,触发器等)创建一条记录。
该表相关字段的含义如下:
sysobjects.name 对象名,如:表名,视图名。
sysonjects.id 对象id。
sysobjects.type 对象类型(p存储过程,v视图,s系统表,u用户表)。
表syscolumns为每个表、视图中的每个列和每个存储过程的每个参数创建一条记录。 该表相关字段的含义如下:(此处的列系指数据库中每个表、视图中的列)
syscolumns.id 该列所属的表的id,可与sysobjects.id相关联
syscolumns.colid 列id,表示该列是表或视图的第几列
syscolumns.type 物理存储类型,可与systypes.type相关联.
syscolumns.length 数据的物理长度。
syscolumns.name 列名字,即字段名。
syscolumns.pre 列的精度级。
syscolumns.scale 列的标度级。
表systypes为每个系统和每个用户提供的数据类型创建一条记录,如果它们存在,给定域和默认值,描述系统提供的数据类型的行不可更改。
该表相关字段的含义如下:
systypes.name 数据类型的名字。
systypes.type 物理存储数据类型。
在sql server的 企业 管理器(sql enterprise manager)中,选定某一数据库,创建存储过程print_dbstructure。
源代码如下:
if exists (select* from sysobjects p; 0xf=4)存储过程
drop procedure dbo. print_dbstructure
go
create procedure print_dbstructure
as
sel
您可能关注的文档
- M8线翔殷路车站大型端头井施工技术的论文.doc
- mastercam的鸟巢烟灰缸加工设计研究的论文.doc
- MATLAB在机械课程设计中的应用研究的论文.doc
- MATLAB通信仿真在 通信原理 课程教学中的应用的论文.doc
- MBR技术在污水处理中的应用的论文.doc
- MC68300系列微控制器的特点和应用的论文.doc
- MCST150真空离子渗碳(碳氮共渗)设备简介的论文.doc
- MIS 开发模式的策略研究的论文.doc
- MIS开发模式的策略的研究的论文.doc
- MrSID技术在GIS中的应用的论文.doc
- 抢分秘籍10 带电粒子电场中的直线运动、偏转和交变电电场中的应用(三大题型)(原卷版)-2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍11 带电粒子在组合场、叠加场中的运动(五大题型)(解析版)-2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍11 带电粒子在组合场、叠加场中的运动(五大题型)(原卷版)-2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍12 电磁感应中的电路与图像问题(二大题型)(解析版) -2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍12 电磁感应中的电路与图像问题(二大题型)(原卷版)-2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍14 热力学定律与气体实验定律综合应用(五大题型)(解析版)-2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍13 电磁感应中的动力学、能量和动量问题(三大题型)(原卷版)-2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍14 热力学定律与气体实验定律综合应用(五大题型)(原卷版)-2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍16 振动图像与波动图像的综合应用(三大题型)(解析版)-2025年高考物理冲刺抢押秘籍.pdf
- 抢分秘籍15 光的折射、全反射的综合应用(二大题型)(解析版)-2025年高考物理冲刺抢押秘籍.pdf
文档评论(0)