sqlserver 导出数据库表结构

SELECT
  表名称 = case when columns.colorder=1 then objects.name else '' end,
  表说明 = case when columns.colorder=1 then isnull(properties2.value,'') else '' end,
  列名称 = columns.name,
  列说明 = isnull(properties1.[value],''),
  类型 = types.name,
  长度 = COLUMNPROPERTY(columns.id,columns.name,'PRECISION'),
  是否是主键 = 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 = columns.id AND colid=columns.colid 
  ))) then '是' else '否' end,
  默认值=isnull(comments.text,''),
  是否允许为空=case when columns.isnullable=1 then '是'else '否' end
  FROM syscolumns columns
  left join systypes types on columns.xtype=types.xusertype 
  inner join sysobjects objects on columns.id=objects.id and objects.xtype='U' and objects.name<>'dtproperties' 
  left join syscomments comments on columns.cdefault=comments.id 
  left join sys.extended_properties properties1 on columns.id=properties1.major_id and columns.colid=properties1.minor_id  
  left join sys.extended_properties properties2 on objects.id=properties2.major_id and properties2.minor_id =0 
  --where d.name='' --查询指定表
  order by columns.id,columns.colorder 
转载至: https://www.cnblogs.com/miaomiaoquanfa/p/6909835.html
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值