我使用对象资源管理器中的过滤器表执行此操作,但我想用查询执行此操作 当我执行查询时,返回所有带有dbo模式及其字段的表。
答案 0 :(得分:2)
从sys.tables
返回,使用schema_id
过滤
SELECT '['+SCHEMA_NAME(schema_id)+'].['+name+']'
AS TableName
FROM sys.tables where SCHEMA_NAME(schema_id) = 'dbo'
在架构中包含视图
SELECT '['+SCHEMA_NAME(schema_id)+'].['+name+']'
AS TableName
FROM sys.tables where SCHEMA_NAME(schema_id) = 'dbo'
UNION
SELECT '['+SCHEMA_NAME(schema_id)+'].['+name+']'
AS TableName
FROM sys.views where SCHEMA_NAME(schema_id) = 'dbo'
答案 1 :(得分:1)
您是否想要获取此信息?
SELECT * FROM sys.tables WHERE schema_id = 1
--SchemaId 1 is for 'dbo' schema
如果你也想要列,那就试试吧。
SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'dbo'
答案 2 :(得分:0)
获取所有表,架构,列和数据类型在数据库中使用以下查询。
select TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME,DATA_TYPE from INFORMATION_SCHEMA.COLUMNS