sql 2008获取表字段说明
2017-02-16 16:24
316 查看
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.xusertype=b.xusertype
inner join sysobjects d on a.id=d.id and d.xtype='U' and d.name<>'dtproperties'
left join 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
--where d.name='orders' --如果只查询指定表,加上此条件
order by a.id,a.colorder
表名=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.xusertype=b.xusertype
inner join sysobjects d on a.id=d.id and d.xtype='U' and d.name<>'dtproperties'
left join 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
--where d.name='orders' --如果只查询指定表,加上此条件
order by a.id,a.colorder
相关文章推荐
- sql 2008获取表字段说明
- 获取字段,标识,主键,类型,长度,小数位数,允许为空,字段说明 for sql 2000
- 教你如何在 sql server 2005 使用 sql 语句获取字段的说明信息
- sql根据表名获取字段及对应说明
- SQL Server 2008中获取数据库所有表及其字段名称、类型、长度的SQL
- Sql获取数据表字段说明
- 获取SQL 各字段说明,表名等有效信息
- SQL Server 2008中获取数据库所有表及其字段名称、类型、长度的SQL
- MSSQL 如何采用sql语句 获取建表字段说明、字段备注、字段类型、字段长度
- sql根据表名获取字段及对应说明
- sql根据表名获取字段及对应说明
- sql根据表名获取字段及对应说明类型长度
- Sql获取表信息(包括结构及字段说明)
- 获取SAP表字段说明
- 用SQL语句获取MSSQL表关键字段的名称、数据类型和长度
- 返回数据库内所有表的字段详细说明的SQL语句 (转)
- 获取SAP表字段说明
- ACCESS,SQL(包含字段类型说明,及语法创建表)
- 获取SAP表字段说明