我想查找一个名为' LOB'的列。成千上万的观点存在。 架构名称:PACONE
这里有任何帮助。感谢。
答案 0 :(得分:2)
该解决方案将取决于您拥有的数据库服务器。
如果您有Oracle,请转到Search an Oracle database for tables with specific column names?
如果你有mySQL,请转到How do i search a mysql database for a specific column name
如果你有PostgreSQL,请转到How to find a table having a specific column in postgresql
如果您有SQL Server,这是一个可能的解决方案:
操作方法:在SQL Server数据库中查找字段或表
假设您需要找到一个名为GLASS_ID的字段,您只需运行:
- 搜索某个字段名称 - SELECT TABLE_NAME,COLUMN_NAME,DATA_TYPE,IS_NULLABLE 来自INFORMATION_SCHEMA.COLUMNS WHERE UPPER(COLUMN_NAME)='GLASS_ID'
同样,您可以查找以“CO”
结尾的所有字段名称- 搜索以...结尾的字段名称 SELECT TABLE_NAME,COLUMN_NAME,DATA_TYPE,IS_NULLABLE 来自INFORMATION_SCHEMA.COLUMNS 在哪里上(COLUMN_NAME)喜欢'%CO'
当然,这应该在SQL Server下运行,并且仅在SQL Server 2005中进行了测试,但我想它也适用于任何最新版本。
答案 1 :(得分:0)
use [your database name]
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 = 'LOB'
ORDER BY schema_name, table_name;
答案 2 :(得分:0)
首先,您应提供有关您的环境的一些信息。
如果您使用Oracle,您可以使用dab_view查询dba_tab_columns(也可以是user_或all_),例如:
select a.view_name
from dba_views a
join dba_tab_columns b
on a.view_name = b.table_name
where lower(b.column_name) = 'lob'
and lower(b.owner) = <view_owner>;