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 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 = so.name AND so.xtype = 'PK'
WHERE sc.id = a.id AND sc.colid = a.colid) THEN '√'
ELSE ''
END ,
外键=CASE WHEN tony.fkey is not null and tony.fkey=a.colid THEN '√' ELSE '' END ,
外键表=CASE WHEN tony.fkey is not null and tony.fkey=a.colid
THEN object_name(tony.fkeyid) ELSE ''
END ,
外键字段=CASE WHEN tony.fkey is not null and tony.fkey=a.colid
THEN (SELECT name FROM syscolumns
WHERE colid=tony.fkey AND id=tony.fkeyid)
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], ''),
创建时间=d.crdate,
更改时间=CASE WHEN a.colorder = 1 THEN d.refdate ELSE NULL END
FROM dbo.syscolumns a
LEFT JOIN dbo.systypes b ON a.xtype = b.xusertype
INNER JOIN dbo.sysobjects d ON a.id = d.id AND d.xtype = 'U' AND d.status >= 0
LEFT JOIN dbo.syscomments e ON a.cdefault = e.id
LEFT JOIN sys.extended_properties g ON a.id = g.major_id AND a.colid = g.minor_id
LEFT JOIN sys.extended_properties f ON d.id = f.major_id AND f.minor_id = 0
LEFT JOIN sysobjects htl ON htl.parent_obj=d.id AND htl.xtype='F'
LEFT JOIN sysforeignkeys tony on htl.id=tony.constid
WHERE d.name='tb' --这里输入包含表名称的条件
ORDER BY d.id, a.colorder
基于SQL2005 SQL2008 表结构信息查询升级版的详解(含外键信息)
2020-07-08 16:00MSSQL教程网 Sql Server
本篇文章是对SQL2005 SQL2008 表结构信息查询升级版(含外键信息)进行了详细的分析介绍,需要的朋友参考下
延伸 · 阅读
- 2021-12-22SQL2005新建复制“找不到存储过程 错误:2812”的
- 2021-12-22SQL2008全部数据导出导入两种方法
- 2021-11-29详解Oracle数据库中自带的所有表结构(sql代码)
- 2021-09-30sql2005可实时监测数据库版本控制SQL的触发器
- 2021-08-27Laravel创建数据库表结构的例子
- 2021-08-06MySql开发之自动同步表结构
- Sql Server
针对Sqlserver大数据量插入速度慢或丢失数据的解决方法
这篇文章主要介绍了针对Sqlserver大数据量插入速度慢或丢失数据的解决方法,很有实用价值,需要的朋友可以参考下 ...
- Sql Server
SqlServer将查询结果转换为XML和JSON
这篇文章主要介绍了SqlServer将查询结果转换为XML和JSON的相关资料,需要的朋友可以参考下 ...
- Sql Server
SQL server 随机数函数
在SQL server中,有个随机函数rand(),有不少新手可能不知道存在这个函数,现在我就把这个函数的一些随机数生成技巧写出来,这是面向菜鸟的,老鸟请不要...
- Sql Server
SQL查询入门(上篇) 推荐收藏
SQL语言是一门简单易学却又功能强大的语言,它能让你快速上手并写出比较复杂的查询语句。 ...
- Sql Server
SQLServer 数据库故障修复顶级技巧之一
SQL Server 2005 和 2008 有几个关于高可用性的选项,如日志传输、副本和数据库镜像。 ...
- Sql Server
sql的临时表使用小结
这篇文章主要介绍了sql的临时表使用小结,需要的朋友可以参考下 ...
- Sql Server
SQL查询的底层运行原理深入分析
这篇文章主要给大家介绍了关于SQL查询的底层运行原理,文中通过实例代码结束的非常详细,对大家学习或者使用SQL具有一定的参考学习价值,需要的朋友...
- Sql Server
SQL server 2008 数据安全(备份和恢复数据库)
备份和恢复数据库对于数据库管理员来说是保证数据安全性的一项重要工作。SQL server 2008提供了高性能的备份和恢复功能,可以实现多种方式的数据库备份...