SQL 语句存储过程 在本节中,我们将详细介绍 SQL 语句存储过程的知识点。存储过程是数据库中的一种编程对象,它可以将多个 SQL 语句组合成一个单一的执行单位,以提高数据库的性能和安全性。 标题:SQL 语句存储过程 描述:动态创建数据库、动态查询、登录存储过程等,这些 SQL 语句都是动态应用的,不需要在使用 Use 指令,在一个数据库中,就可以操作所有数据库。 标签:SQL 语句 存储过程 部分内容: 1. 查询表的名字和表的说明:使用以下 SQL 语句可以查询表的名字和表的说明: ```sql select b.name,f.value from sysobjects b left join sys.extended_properties f on b.id=f.major_id and f.minor_id=0 where b.xtype='u' ``` 这条语句使用了 sysobjects 和 sys.extended_properties 两个系统表,通过 left join 连接这两个表,查询出表的名字和表的说明。 2. 查询视图的名字和说明:使用以下 SQL 语句可以查询视图的名字和说明: ```sql select b.name,f.value from sysobjects b left join sys.extended_properties f on b.id=f.major_id and f.minor_id=0 where b.xtype='V' ``` 这条语句与上一条语句类似,都是使用 sysobjects 和 sys.extended_properties 两个系统表,通过 left join 连接这两个表,查询出视图的名字和视图的说明。 3. 查询存储过程的名字和说明:使用以下 SQL 语句可以查询存储过程的名字和说明: ```sql select b.name,f.value from sysobjects b left join sys.extended_properties f on b.id=f.major_id and f.minor_id=0 where b.xtype='P' ``` 这条语句与前两条语句类似,都是使用 sysobjects 和 sys.extended_properties 两个系统表,通过 left join 连接这两个表,查询出存储过程的名字和存储过程的说明。 4. 查询两个时间之间的数据:使用以下 SQL 语句可以查询两个时间之间的数据: ```sql select * from 表名 where sj between '2012-04-04' and DateAdd(dd,+1,'2012-04-9') ``` 这条语句使用了 between 关键字,查询出指定时间范围内的数据。 5. 讲一个表中的数据复制到另一张表中: 有两种情况: * 如果要复制到的新表不存在: ```sql select * into 新表名 from 源表名 ``` * 如果要复制的新表存在: ```sql insert into 表名 select 1,* from 源表名 ``` 这两条语句可以将一个表中的数据复制到另一张表中。 6. 从一个数据库中查询另一个数据库中的信息:使用以下 SQL 语句可以从一个数据库中查询另一个数据库中的信息: ```sql select COUNT(*) from 数据库名.dbo.表名 ``` 这条语句可以查询另一个数据库中的表的记录数。 7. 获取数据库中的表:使用以下 SQL 语句可以获取数据库中的表: ```sql select name from sysobjects where type='U' ``` 这条语句使用了 sysobjects 系统表,查询出数据库中的表。 8. 获取表的字段:使用以下 SQL 语句可以获取表的字段: ```sql Select name from syscolumns Where ID=OBJECT_ID('表名') ``` 这条语句使用了 syscolumns 系统表,查询出表的字段。 9. 获取表中字段的表述:使用以下 SQL 语句可以获取表中字段的表述: ```sql SELECT value FROM ::fn_listextendedproperty (NULL, 'user','dbo', 'table', 'Route', 'column', default) ``` 这条语句使用了 fn_listextendedproperty 系统函数,查询出表中字段的表述。 10. 获取表中某一列的说明:使用以下 SQL 语句可以获取表中某一列的说明: ```sql select b.[value] from sys.columns a left join sys.extended_properties b on a.object_id=b.major_id and a.column_id=b.minor_id inner join sysobjects c on a.column_id=c.id and a.[name]='列名' and c.[name]='表名' ``` 这条语句使用了 sys.columns、sys.extended_properties 和 sysobjects 三个系统表,查询出表中某一列的说明。 11. 获取表信息的所有信息:使用以下 SQL 语句可以获取表信息的所有信息: ```sql SELECT 表名=case when a.colorder=1 then d.name else '' end, 表说明=case when a.colorder=1 then isnull(f.value,'') else '' end, 字段序号=a.colorder, 字段名=a.name, 标识=case when COLUMNPROPERTY( a.id,a.name,'IsIdentity')=1 then '√'else '' end, 主键=case when exists(SELECT 1 FROM sysobjects where xtype='PK' and name in (SELECT name FROM sysindexes WHERE indid in(SELECT indid FROM sysindexkeys WHERE id = a.id AND colid=a.colid))) then '√' else '' end, 类型=b.name, 占用字节数=a.length, 长度=COLUMNPROPERTY(a.id,a.name,'PRECISION'), 小数位数=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0), 允许空=case when a.isnullable=1 then '√'else '' end, 默认值=isnull(e.text,''), 字段说明=isnull(g.[value],'') FROM syscolumns a left join systypes b on a.xtype=b.xtype left join sys.extended_properties f on a.id=f.major_id and a.colid=f.minor_id left join syscomments e on a.id=e.id and a.colid=e.colid left join sys.extended_properties g on a.id=g.major_id and a.colid=g.minor_id ``` 这条语句使用了多个系统表,查询出表信息的所有信息。




















- 粉丝: 5
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 供暖系统自动化控制方案.doc
- 最新教师说课信息化教学设计通用PPTppt模板.pptx
- AT89C51-汇编语言资源
- 计算机网络的安全问题及防护策略研究.docx
- 单片机的温控制系统设计孙连强.doc
- 数据库课程设计报告车站售票管理系统.doc
- Delphi4汽车零件销售管理系统.doc
- 计算机基础题库.doc
- GIS软件市场现状与行业发展.doc
- 山东大学电气工程及其自动化专业卓越工程师培养技术方案.doc
- (初级)matlabGUI设计方案学习手记.doc
- 数控铣床铣削编程与操作研究设计.doc
- plc泡沫塑料切片机自动化设计方案.doc
- 大数据时代贸易统计的新要求.docx
- ITAT移动互联网站设计方案(HTML)六届预赛试题.doc
- 探讨新时期背景下计算机通信技术的发展.docx


