【发布时间】:2011-06-02 17:48:53
【问题描述】:
如何列出数据库中包含具有给定名称的列的所有表?
【问题讨论】:
-
你能说得更具体点吗?您想要一个表中的列列表,还是要查找包含列的所有表或其他内容?
标签: sybase
如何列出数据库中包含具有给定名称的列的所有表?
【问题讨论】:
标签: sybase
试试这个:
select distinct object_name(id)
from syscolumns
where name = 'my_column_name'
order by object_name(id)
或者这样:
select distinct so.name
from syscolumns sc
, sysobjects so
where sc.id = so.id
and sc.name = 'my_column_name'
order by so.name
这就是你一直在寻找的吗?
【讨论】:
您也可以使用 sp_columns 存储过程。
sp_columns @column_name = '%column_name%'
【讨论】:
以下查询也可用于获取 column_name 和 table_name。
这将帮助用户识别 column_name 所属的表。
select distinct tbl_col.name as Field_name,tbl_object.name as Table_name
from syscolumns tbl_col
, sysobjects tbl_object
where tbl_col.id = tbl_object.id
order by tbl_object.name
【讨论】:
试试这个:
sp_columns @column_name = '%column_name%'
【讨论】: