从SQL Server检索具有其架构名称的所有表和视图名称的sql查询是什么。
答案 0 :(得分:2)
这应该可以工作,尽管很容易找出来:
SELECT
*
FROM [INFORMATION_SCHEMA].[TABLES]
WHERE [TABLE_TYPE] IN('BASE TABLE', 'VIEW');
答案 1 :(得分:0)
应该可以:
SELECT '['+SCHEMA_NAME(schema_id)+'].['+name+']'
AS SchemaTable
FROM sys.tables
答案 2 :(得分:0)
您可以将Sys.Objects
和Sys.Schemas
用作
SELECT O.name ObjectName,
S.name SchemaName,
CASE O.type WHEN 'U' THEN 'TABLE'
WHEN 'V' THEN 'VIEW'
END ObjectType
FROM Sys.Objects O INNER JOIN Sys.Schemas S
ON O.schema_id = S.schema_id
WHERE O.type = 'U'
OR
O.type = 'V'
-- AND
-- S.name = 'dbo' if you want a specific schema
这里是 example