从sql server检索所有表和视图名称及其模式名称的sql查询是什么。
这应该可以工作,尽管很容易找到:
SELECT
*
FROM [INFORMATION_SCHEMA].[TABLES]
WHERE [TABLE_TYPE] IN('BASE TABLE', 'VIEW');
应该可以这样做:
SELECT '['+SCHEMA_NAME(schema_id)+'].['+name+']'
AS SchemaTable
FROM sys.tables
您可以使用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
以下是示例