使用Openquery链接服务器更新表

时间:2013-02-08 05:52:42

标签: sql sql-server sql-server-2008 tsql openquery

我已经尝试过此代码但仍然出现以下错误,也许任何人都可以提供帮助?

UPDATE a 
SET    a.MMDWNO = '21'
FROM   OPENQUERY(NMIIFLIB,
       'select * from MVXCDTANSN.MITMAS WHERE MMITTY = ''25''') a 

错误:

  

返回链接服务器“NMIIFLIB”的OLE DB提供程序“MSDASQL”   消息“[IBM] [iSeries Access ODBC驱动程序] [DB2 UDB] SQL7008 - MITMAS in   MVXCDTANSN对操作无效。“。
  Msg 7343,Level 16,State 4,Line 1
  链接服务器“NMIIFLIB”的OLE DB提供程序“MSDASQL”   无法更新表“[MSDASQL]”。

select语句工作正常,但是当我尝试更新时,我总是坚持这个。

2 个答案:

答案 0 :(得分:6)

如果您尝试更新链接服务器上的表,请尝试以下语法:

UPDATE OPENQUERY(NMIIFLIB, 'select * from MVXCDTANSN.MITMAS where MMITTY = ''25''')
SET MMDWNO = 21

答案 1 :(得分:-2)

你必须试试这个。希望这会对你有所帮助。

UPDATE OPENQUERY(firstlink, 'select * from job.dbo.student where id = ''3''') 
    SET name = 'sanjeev acharya'