从SQL Server中检索具有架构名称的所有表和视图名称

时间:2018-12-12 13:20:03

标签: sql sql-server tsql

从SQL Server检索具有其架构名称的所有表和视图名称的sql查询是什么。

3 个答案:

答案 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.ObjectsSys.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