SQL查询数据库中所有含有某一列的所有表

(以前不知道这些都能直接写SQL语句查询出来,只会自己一个表一个表的点开看,现在想想觉得真傻!)

 

 

SQL查询数据库中所有含有某一列的所有表:
SELECT name FROM sysobjects
WHERE id IN (SELECT id FROM syscolumns WHERE syscolumns.NAME ='列名')
AND sys.sysobjects.xtype ='U'
ORDER BY sys.sysobjects.name

SQL查询数据库里所有表:

SELECT * FROM sysobjects WHERE xtype ='u'

查询数据库中是否存在某个表:

select count(1) from sys.objects where name = '表名'(不能带上dbo.)

select ObjectProperty(Object_ID( '表名'),'IsUserTable')

 

查询数据库中所有表所有列名及其描述和类型

 

select tab.name 表名 ,col.name 列名,typ.name 类型,col.max_length 长度,col.is_nullable 是否可为空,pro.value 描述
from sys.tables tab
join  sys.columns col on tab.object_id = col.object_id
left join systypes typ on col.system_type_id = typ.xusertype
left join sys.extended_properties pro on col.column_id = pro.minor_id and tab.object_id = pro.major_id
order by tab.name,col.column_id

 

 

 

 

转载于:https://www.cnblogs.com/see-you/p/SQL.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值