从 Microsoft SQL 服务器中搜索链接服务器 (Oracle) 中的列名称
Search Column name in Linked Server (Oracle) from Microsoft SQL Server
我需要从 Microsoft SQL 服务器的链接服务器上的链接 Oracle 数据库中检索 Table 名称。
例如我可以使用
在 SQL 服务器中获取 table 个名字:
SELECT TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE '%TELEPHONE%'
但是,我需要 Oracle 代码。
我正在使用带有 Oracle 链接服务器的 Microsoft SQL 服务器。
SELECT
*
FROM
OPENQUERY(ORACLE_DB_NAME,'
SELECT
table_name,
column_name
FROM
cols
WHERE
column_name LIKE ''%TELEPHONE%'''
)
根据您的评论“您好,SQL 检索 Oracle Table 名称”的查询,您可以执行以下操作:
SELECT
table_name,
column_name
FROM
cols
WHERE
column_name LIKE '%TELEPHONE%';
您可以使用 USER_TAB_COLS
或 ALL_TAB_COLS
查看它。有关此视图的更多信息,请参阅 oracle 文档
SELECT TABLE_NAME, COLUMN_NAME
FROM USER_TAB_COLS
WHERE UPPER(COLUMN_NAME) LIKE '%TELEPHONE%';
UPPER
用于 WHERE
子句,因为如果名称是用双引号创建的,则名称区分大小写,如果不使用引号创建,则不区分大小写。
干杯!!
我需要从 Microsoft SQL 服务器的链接服务器上的链接 Oracle 数据库中检索 Table 名称。
例如我可以使用
在 SQL 服务器中获取 table 个名字:SELECT TABLE_NAME, COLUMN_NAME
FROM INFORMATION_SCHEMA.COLUMNS
WHERE COLUMN_NAME LIKE '%TELEPHONE%'
但是,我需要 Oracle 代码。 我正在使用带有 Oracle 链接服务器的 Microsoft SQL 服务器。
SELECT
*
FROM
OPENQUERY(ORACLE_DB_NAME,'
SELECT
table_name,
column_name
FROM
cols
WHERE
column_name LIKE ''%TELEPHONE%'''
)
根据您的评论“您好,SQL 检索 Oracle Table 名称”的查询,您可以执行以下操作:
SELECT
table_name,
column_name
FROM
cols
WHERE
column_name LIKE '%TELEPHONE%';
您可以使用 USER_TAB_COLS
或 ALL_TAB_COLS
查看它。有关此视图的更多信息,请参阅 oracle 文档
SELECT TABLE_NAME, COLUMN_NAME
FROM USER_TAB_COLS
WHERE UPPER(COLUMN_NAME) LIKE '%TELEPHONE%';
UPPER
用于 WHERE
子句,因为如果名称是用双引号创建的,则名称区分大小写,如果不使用引号创建,则不区分大小写。
干杯!!