我正在使用SQl Server 2014,如果我们知道数据库名称为:
,我们通常会列出表格。USE YOURDBNAME
GO
SELECT *
FROM sys.Tables
GO
但我想知道我的机器上存在的所有表格而不管db
或者我可以通过列出所有数据库名称来进行循环。(EXEC sp_databases)
有没有更好的方法可以找到这个?
答案 0 :(得分:1)
有多种方法可以获取数据库中的所有表格
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'
OR
SELECT * FROM Sys.Tables
OR
SELECT * FROM INFORMATION_SCHEMA.TABLES
OR
SELECT sobjects.name FROM sysobjects sobjects WHERE sobjects.xtype = 'U'
答案 1 :(得分:0)
select * from tab
或
select * from * cat
第一个将显示关联的CLUSTERID以及当前用户的表格。
答案 2 :(得分:0)
我认为您需要
SELECT name FROM master.sys.databases
,然后您将需要创建一个游标查询(针对USE XXXX),以遍历以下查询。
SELECT * FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_TYPE='BASE TABLE'