MSSQL2000 获取数据库表、视图、存储过程等结构信息
来源:互联网 发布:2017最新网络流行语 编辑:程序博客网 时间:2024/05/25 21:33
1.查询数据库下所有用户表(或视图)的结构信息(包括表名、字段名、类型等等)
SELECT TOP 100 PERCENT CASE WHEN a.colorder = 1 THEN d.name ELSE '' END AS 表名, CASE WHEN a.colorder = 1 THEN ISNULL(f.value, '') ELSE '' END AS 表说明, a.colorder AS 字段序号, a.name AS 字段名, CASE WHEN COLUMNPROPERTY(a.id, a.name, 'IsIdentity') = 1 THEN '√' ELSE '' END AS 标识, CASE WHEN EXISTS ( SELECT 1 FROM dbo.sysindexes si INNER JOIN dbo.sysindexkeys sik ON si.id = sik.id AND si.indid = sik.indid INNER JOIN dbo.syscolumns sc ON sc.id = sik.id AND sc.colid = sik.colid INNER JOIN dbo.sysobjects so ON so.name = si.name AND so.xtype = 'PK' WHERE sc.id = a.id AND sc.colid = a.colid ) THEN '√' ELSE '' END AS 主键, b.name AS 类型, a.length AS 长度, COLUMNPROPERTY(a.id, a.name, 'PRECISION') AS 精度, ISNULL(COLUMNPROPERTY(a.id, a.name, 'Scale'), 0) AS 小数位数, CASE WHEN a.isnullable = 1 THEN '√' ELSE '' END AS 允许空, ISNULL(e.text, '') AS 默认值, ISNULL(g.[value], '') AS 字段说明, d.crdate AS 创建时间, CASE WHEN a.colorder = 1 THEN d.refdate ELSE NULL END AS 更改时间FROM dbo.syscolumns a LEFT OUTER JOIN dbo.systypes b ON a.xtype = b.xusertype INNER JOIN dbo.sysobjects d ON a.id = d.id AND d.xtype = 'U' --视图为'V' AND d.status >= 0 LEFT OUTER JOIN dbo.syscomments e ON a.cdefault = e.id LEFT OUTER JOIN dbo.sysproperties g ON a.id = g.id AND a.colid = g.smallid AND g.name = 'MS_Description' LEFT OUTER JOIN dbo.sysproperties f ON d.id = f.id AND f.smallid = 0 AND f.name = 'MS_Description'ORDER BY d.name, a.colorder截图如下:
2.查询数据库下所有存储过程的结构信息(包括存储过程名、参数名、类型等等,包括无参的存储过程)
SELECT TOP 100 PERCENT CASE WHEN a.colorder = 1 THEN d.name WHEN ISNULL(a.colorder, 0) = 0 THEN d.name ELSE '' END AS 存储过程名称, CASE WHEN a.colorder = 1 THEN ISNULL(f.value, '') ELSE '' END AS 存储过程说明, a.colorder AS 参数序号, a.name AS 参数名称, b.name AS 类型, a.length AS 长度, COLUMNPROPERTY(a.id, a.name, 'PRECISION') AS 精度, ISNULL(COLUMNPROPERTY(a.id, a.name, 'Scale'), 0) AS 小数位数, CASE WHEN a.isoutparam = 1 THEN '√' ELSE '' END AS 参数输出, ISNULL(g.[value], '') AS 参数说明, d.crdate AS 创建时间, CASE WHEN a.colorder = 1 THEN d.refdate ELSE NULL END AS 更改时间FROM dbo.syscolumns a LEFT OUTER JOIN dbo.systypes b ON a.xtype = b.xusertype RIGHT OUTER JOIN dbo.sysobjects d ON a.id = d.id LEFT OUTER JOIN dbo.sysproperties g ON a.id = g.id AND a.colid = g.smallid AND g.name = 'MS_Description' LEFT OUTER JOIN dbo.sysproperties f ON d.id = f.id AND f.smallid = 0 AND f.name = 'MS_Description'WHERE d.xtype = 'P' AND d.status >= 0ORDER BY d.name, a.colorder截图如下:
3.查询数据库下所有用户自定义函数的结构信息(包括函数名、参数名、类型、返回值等等)
SELECT TOP 100 PERCENT CASE WHEN a.usertype IS NULL THEN d.name WHEN ( NOT EXISTS( SELECT c.usertype FROM syscolumns c WHERE a.id = c.id AND c.usertype IS NULL ) ) AND (a.colorder = 1 AND a.number = 0) THEN d.name ELSE '' END AS 函数名称, CASE WHEN a.colorder = 0 THEN ISNULL(f.value, '') ELSE '' END AS 函数说明, a.colorder AS 参数序号, a.name AS 参数名称, b.name AS 类型, a.length AS 长度, COLUMNPROPERTY(a.id, a.name, 'PRECISION') AS 精度, ISNULL(COLUMNPROPERTY(a.id, a.name, 'Scale'), 0) AS 小数位数, CASE WHEN a.usertype IS NULL THEN '√' WHEN ( NOT EXISTS( SELECT c.usertype FROM syscolumns c WHERE a.id = c.id AND c.usertype IS NULL ) ) AND a.number = 0 THEN '√' ELSE '' END AS 返回值, ISNULL(g.[value], '') AS 参数说明, d.crdate AS 创建时间, CASE WHEN a.usertype IS NULL THEN d.refdate WHEN ( NOT EXISTS( SELECT c.usertype FROM syscolumns c WHERE a.id = c.id AND c.usertype IS NULL ) ) AND (a.colorder = 1 AND a.number = 0) THEN d.refdate ELSE NULL END AS 更改时间FROM dbo.syscolumns a LEFT OUTER JOIN dbo.systypes b ON a.xtype = b.xusertype INNER JOIN dbo.sysobjects d ON a.id = d.id AND (d.xtype = 'FN' OR d.xtype = 'IF' OR d.xtype = 'TF') AND d.status >= 0 LEFT OUTER JOIN dbo.sysproperties g ON a.id = g.id AND a.colid = g.smallid AND g.name = 'MS_Description' LEFT OUTER JOIN dbo.sysproperties f ON d.id = f.id AND f.smallid = 0 AND f.name = 'MS_Description'ORDER BY d.name, a.number, a.colorder截图如下:
- MSSQL2000 获取数据库表、视图、存储过程等结构信息
- mssql2000数据库间复制表,存储过程
- sql语句获取表,视图,存储过程等信息(自己总结)
- sql 中获取数据库名、表名、存储过程等信息的方法
- SqlServer判断(数据库,表,视图,存储过程等)是否存在
- SQL Server 2008 检索数据库、表、视图、存储过程等
- Java获取数据库表列信息、索引信息、存储过程等信息
- Java获取数据库表列信息、索引信息、存储过程等信息 .
- Java获取数据库表列信息、索引信息、存储过程等信息
- 获取sql所有存储过程脚本,获取sql表名,视图名,存储过程名等
- MSSQL2000 通用交叉表查询存储过程
- asp+mssql2000存储过程
- mssql2000 数据库结构查询
- 查看DB2视图存储过程等各种信息
- 获取sql所有存储过程脚本,获取sql表名,视图名,存储过程名,列名等
- 获取sql所有存储过程脚本,获取sql表名,视图名,存储过程名,列名等
- sqlserver获取数据库表结构的存储过程
- Sqlserver获取所有数据库名,表信息,字段信息,主键信息,以及表结构等。
- 提升ASP.net性能的方法
- js解决cookie跨域访问的问题
- ACE - ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Condition .
- 从静态代理到动态代理
- HDOJ1715 大菲波数
- MSSQL2000 获取数据库表、视图、存储过程等结构信息
- Serializable
- AOP 概念 原理及代码实现
- 如何视频会议中回声的发现与消除
- 你与杰出电子工程师的差距在哪?
- 学习Java用英文教材
- 正则表达式入门经典(学习笔记六)——向前查找(lookahead)和向后查找(lookbehind)
- Discuz! X2中存放用户信息的表
- ACE基本的多线程编程(Basic Multithreaded Programming)