环境
oracle 版本 11.2r sqlserver 2012
需求
Oracle 通过 gateway dblink 打通和 sqlserver的连接。用户能够直接访问oracle获得sqlserver的数据。
关键问题select * from dbo.Alarm@LINK_ASDWMS
> ORA-01002: fetch out of sequence
ORA-02063: preceding line from LINK_ASDWMS
> 时间: 0.353s
当所有配置完成后,查询sqlserver下的表时,会报这个错误。
猜测猜测一
通过配置,oracle应该是可以检测到sqlserver的存在
我为什么会得出这个结论,原因如下:
当我修改 select 语句,查询一个完全不存在的表时select * from dbo.NotFount@LINK_ASDWMS
> ORA-00942: table or view does not exist
[Oracle][ODBC SQL Server Driver][SQL Server]对象名 'DBO.NOTFOUNT' 无效。 {42S02,NativeErr = 208}[Oracle][ODBC SQL Server Driver][SQL Server]无法预定义语句。 {42000,NativeErr = 8180}
ORA-02063: preceding 2 lines from LINK_ASDWMS
> 时间: 0.1s
能够精准的报错,提示表不存在。猜测二
数据可能没有正常返回到oracle就报错了,因为查了两张表&