【发布时间】:2019-06-22 10:19:18
【问题描述】:
我正在使用 SSMS 或直接使用 C# 代码执行问题下方列出的查询。结果,我得到了一个表,其中包含该数据库中所有可用表的名称列表。
在大多数情况下,这些表名可以直接用于所有类型的“SELECT”查询。但是,如果当前数据库是 AdventureWorks2017,则所有表名都已损坏。如果我想执行任何“SELECT”查询,我必须手动添加所有不是 [dbo] 的前缀(例如,[HumanResources]、[Person] 等)。
另外,我的问题是:我应该使用什么样的查询来获得完整的前缀表名(如[AdventureWorks2017].[HumanResources].[Employee] or [Northwind].[dbo].[CustomerCustomerDemo])?
use 'someDBName'
SELECT TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE' AND TABLE_CATALOG = 'someDBName'
【问题讨论】:
-
有一个名为 ApexSQL 的 SSMS 插件,可以像这样格式化您的查询
-
@EzLo,谢谢你的参考!
标签: sql sql-server