他们是否有任何其他方式或sql
查询来查找具有特定列的数据库表名,而不是如下所示,
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME = 'NameID'
他们是否有任何其他方式或sql
查询来查找具有特定列的数据库表名,而不是如下所示,
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME = 'NameID'
在 SQL Server 中,您可以查询sys.columns
.
就像是:
SELECT
t.name
FROM
sys.columns c
inner join
sys.tables t
on
c.object_id = t.object_id
WHERE
c.name = 'NameID'
如果您有多个模式中的表,您可能需要额外的查找来解析模式名称。
你可以运行这个查询
SELECT t.name AS table_name,
SCHEMA_NAME(schema_id) AS schema_name,
c.name AS column_name
FROM sys.tables AS t
INNER JOIN sys.columns c ON t.OBJECT_ID = c.OBJECT_ID
WHERE c.name LIKE '%Column%' -- write the column you search here
ORDER BY schema_name, table_name;
对于 Oracle 数据库。使用以下查询:
select table_name from all_tab_columns where column_name = 'NameID';
如果你有 DBA 权限,你可以试试这个命令:
select table_name from dba_tab_columns where column_name = 'NameID';