T-SQL无法在对象资源管理器中查看表

时间:2016-05-02 19:12:21

标签: sql sql-server tsql

我一直试图找到一些带有给定列的表。因为我没有创建这些表,需要找到我需要在脚本中引用的表。

我使用此查询 -

TABLE_SCHEMA

我可以看到,TABLE_NAMETABLE_CATALOG = MYCAT TABLE_SCHEMA = dbo TABLE_NAME = myTable MYCAT

让我们说:

myTable

我转到对象资源管理器并展开目录myTable的表格以滚动表格,但我找不到其中列出的{{1}}。但是,如果我愿意,我可以向{{1}}查询数据。

我可能没有看到这些表格的原因是什么?我在哪里可以找到它们?

1 个答案:

答案 0 :(得分:0)

INFORMATION_SCHEMA.COLUMNS允许您获取有关数据库中所有表和视图的所有列的信息。

您可以使用此查询进行验证:

SELECT SCHEMA_NAME(o.schema_id) AS schema_name 
,o.name AS object_name
,type_desc FROM sys.objects AS o INNER JOIN sys.columns AS c ON o.object_id = c.object_id WHERE c.name  like '%someColumn%'

查找TABLE_CATALOG,TABLE_SCHEMA和TABLE_NAME并获取类型的另一种方法是:

select * ,t.TABLE_TYPE from INFORMATION_SCHEMA.COLUMNS c join INFORMATION_SCHEMA.TABLES t on c.TABLE_NAME=t.TABLE_NAME where column_name like '%someColumn%'