sai90 发表于 2011-05-21 10:41

[疑难问题]MSSQL2005做链接服务器连接informix,select没有问题,insert报错

警告:--->
W (1): 链接服务器"informix"的 OLE DB 访问接口 "MSDASQL" 返回了消息 "不能更新查询,因为 FROM 子句不是单一的简单表名。"。
<---
>[错误] 脚本行:4-5 ---------------------------------------
链接服务器 "informix" 的 OLE DB 访问接口 "MSDASQL" 报错。提供程序报告了意外的灾难性错误。
消息: 7399, 级别: 16, 状态: 1, 过程: , 行: 1 

>[错误] 脚本行:4-5 ---------------------------------------
链接服务器 "informix" 的 OLE DB 访问接口 "MSDASQL" 无法 INSERT INTO 表 "..."。
消息: 7343, 级别: 16, 状态: 2, 过程: , 行: 1 

求解决!!!谢谢了!

日月如尧 发表于 2011-05-23 13:51

能把你的insert语句贴上来吗?

mujian1986 发表于 2011-05-31 18:36

--设informix上有数据库databasename,有表tbl_test,只有一列name,sqlserver服务器上有informix ole db 3.0 驱动,存在odbc配置odbc_srv数据源连到informix数据库databasename上。
EXEC sys.sp_addlinkedserver
        @server = 'link_srv',
    @srvproduct = '',
    @provider = 'MSDASQL',
    @datasrc = 'odbc_srv'
GO
EXEC sp_addlinkedsrvlogin 'link_srv','false',NULL,'informix','informixpwd'
GO
SELECT * FROM OPENQUERY(link_srv,'SELECT * FROM tbl_test');
DELETE FROM OPENQUERY(link_srv,'SELECT * FROM tbl_test');
UPDATE link_srv.databasename.informix.tbl_lict SET name='adsf';
INSERT INTO OPENQUERY(link_srv,'SELECT * FROM tbl_test Where 1<>1') SELECT('试试');
页: [1]
查看完整版本: [疑难问题]MSSQL2005做链接服务器连接informix,select没有问题,insert报错