我需要从 SQL Server 数据库中可用的表中选择 Oracle 数据库中的表数据。因此,我创建了一个指向该 Oracle 数据库的数据库链接,如http://www.dba-oracle.com/t_database_link_sql_server_oracle.htm中所述。
数据库链接工作正常,因为我可以使用以下命令显示此数据库链接中的所有表:
select *
from all_tables@mssql_link
例如,我得到一个表,其中“adr”作为表名,“dbo”作为所有者。
因此,如果我尝试通过以下方式从该表中选择所有内容
select * from dbo.adr@mssql_link
或通过
select * from "dbo"."adr"@mssql_link
或者
select * from adr@mssql_link
我总是得到一个 Oracle 异常:
ORA-00942: 表或视图不存在
[Microsoft][ODBC SQL Server Driver][SQL Server]无效的对象名 'DBO.ADR'。{42S02,NativeErr = 208}[Microsoft][ODBC SQL Server Driver][SQL Server]Statement(s) 无法准备。{42000,NativeErr = 8180}
ORA-02063:前 2 行来自 MSSQL_LINK
我通过创建公共数据库链接 mssql_link 使用“mssql01”连接到由“[PASSWORD]”标识的“[dbUser]”创建了数据库链接;
有人知道那里发生了什么吗?