sql server 2005 导出用户表数据字典(转载)

-----------------------------------------------------
-- 作用:用于 sql server 2005 导出用户表数据字典
--1 默认导出当前数据库中所有用户表 (xtype = 'u') 的数据字典;
--2 可以在 xtype = 'u' 替换为如下所示语句 xtype = 'u' and name in ('son','Person') 导出自定义的表的数据字典;
--3 可以利用集成服务 SSIS 导出数据字典的 excel 文件,形成文档;
------------------------------------------------------
select sysobjects.name as " 表名 ",syscolumns.name as " 字段名 ",
case when systypes.name in ('binary','char','nchar') then (systypes.name + '(' + cast(syscolumns.prec as varchar(50)) + ')')
when systypes.name in ('decimal','numeric') then (systypes.name + '(' + cast(syscolumns.prec as varchar(50)) + ',' + cast(syscolumns.scale as varchar(50)) + ')')
when systypes.name in ('nvarchar','varchar','varbinary') then (case when syscolumns.prec = -1 then (systypes.name + '(MAX)') else (systypes.name + '(' + cast(syscolumns.prec as varchar(50)) + ')') end)
else systypes.name end as " 字段类型 ",
syscomments.text as " 默认值 ", case when syscolumns.isnullable = 1 then 'Y' else 'N' end as " 能否为空 ",
 cast(sys.extended_properties.value as varchar(1024)) as " 备注 "
from syscolumns inner join systypes on syscolumns.xtype = systypes.xtype left join sysobjects
on syscolumns.id = sysobjects.id left outer join sys.extended_properties
on ( sys.extended_properties.minor_id = syscolumns.colid and sys.extended_properties.major_id = syscolumns.id) left outer join syscomments
on syscolumns.cdefault = syscomments.id where syscolumns.id in (select id from sysobjects where xtype = 'u') and (systypes.name <> 'sysname') order by sysobjects.name asc
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值