为了账号安全,请及时绑定邮箱和手机立即绑定

请问如何使用TSQL获取数据库中所有表的列表?

请问如何使用TSQL获取数据库中所有表的列表?

万千封印 2019-08-03 03:03:45
如何使用TSQL获取数据库中所有表的列表?在SQLServer上获取特定数据库中所有表的名称的最佳方法是什么?
查看完整描述

3 回答

?
MMMHUHU

TA贡献1834条经验 获得超8个赞

SQLServer 2005、2008、2012、2014或2016年:

SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'

仅显示特定数据库中的表

SELECT TABLE_NAME 
FROM <DATABASE_NAME>.INFORMATION_SCHEMA.TABLES 
WHERE TABLE_TYPE = 'BASE TABLE'

或,

SELECT TABLE_NAME 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_TYPE = 'BASE TABLE' 
    AND TABLE_CATALOG='dbName' --(for MySql, use: TABLE_SCHEMA='dbName' )

PS:用于SQLServer 2000:

SELECT * FROM sysobjects WHERE xtype='U'



查看完整回答
反对 回复 2019-08-05
?
皈依舞

TA贡献1851条经验 获得超3个赞

SELECT sobjects.nameFROM sysobjects sobjectsWHERE sobjects.xtype = 'U'

下面是可以搜索的其他对象类型的列表:

  • AF:聚合函数(CLR)
  • C:检查约束
  • D:默认或默认约束
  • F:外键约束
  • L:原木
  • FN:标量函数
  • FS:汇编(CLR)标量函数
  • 汇编(CLR)表值函数
  • if:内联表函数
  • IT:内表
  • P:存储过程
  • PC:汇编(CLR)存储过程
  • PK:主键约束(类型为K)
  • RF:复制过滤器存储过程
  • 系统表
  • SN:同义词
  • SQ:服务队列
  • Ta:装配(CLR)DML触发器
  • TF:表函数
  • TR:SQLDML触发器
  • TT:表格类型
  • U:用户表
  • UQ:唯一约束(类型为K)
  • V:观点
  • X:扩展存储过程



查看完整回答
反对 回复 2019-08-05
?
桃花长相依

TA贡献1860条经验 获得超8个赞

SELECT * FROM INFORMATION_SCHEMA.TABLES

SELECT * FROM Sys.Tables


查看完整回答
反对 回复 2019-08-05
  • 3 回答
  • 0 关注
  • 431 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信