--配置SQLSERVER数据库的DBLINK --删除dblink Exec sp_droplinkedsrvlogin test,Null Exec sp_dropserver test --创建说明 exec sp_addlinkedserver @server='链接名称',@srvproduct='',@provider='SQLOLEDB',@datasrc='IP' exec sp_addlinkedsrvlogin '链接名称','false', NULL,'用户名','密码' --demo exec sp_addlinkedserver @server='test',@srvproduct='',@provider='SQLOLEDB',@datasrc='192.168.0.222' exec sp_addlinkedsrvlogin 'test','false', NULL,'sa','xxxxxx'
可视化操作
SQLSERVER添加oracle dblink
数据源为:
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = oracle服务器IP)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SID = orcl) ) )
正常查询句法为:
select top 1 * from link..CEG.T_M_Z_BD_CAR
一般会报错
消息 7356,级别 16,状态 1,第 8 行
链接服务器 "link" 的 OLE DB 访问接口 "OraOLEDB.Oracle" 为列提供的元数据不一致。对象 ""CEG"."T_M_Z_BD_CAR"" 的列 "VIN" (编译时序号为 2)在编译时有 20 的 "LENGTH",但在运行时有 40。
需要改为
select * from OPENQUERY(link,'select * from CEG.T_M_Z_BD_CAR')