当前位置: 代码迷 >> DB2 >> ms sqlserver 2008 管理器透过odbc连接db2能select和update,但是不能insert
  详细解决方案

ms sqlserver 2008 管理器透过odbc连接db2能select和update,但是不能insert

热度:8800   发布时间:2013-02-26 00:00:00.0
ms sqlserver 2008 管理器通过odbc连接db2能select和update,但是不能insert。
服务器上装了db2 v9 express版,客户端安装了IBM Data Server Client
客户端设置了odbc使用 ibm db2 client的连接到db2,SQL server 2008以ibm ole db provider for db2方式创建链接服务器到odbc。
结果select和update可以成功,insert不行。
db2均使用db2admin帐号
db2有设置远程不能更新表或者数据库这种权限么?

insert和update的sql
SELECT *
  FROM [DB2].[SAMPLE].[DB2ADMIN].[T3]


update [DB2].[SAMPLE].[DB2ADMIN].[T3] set name = 'x87232' where ID = 5

insert的语句   

insert into [DB2].[SAMPLE].[DB2ADMIN].[T1](id) values(1)
insert 报错:
链接服务器"DB2"的 OLE DB 访问接口 "IBMDADB2.DB2COPY1" 返回了消息 " CLI0100E  参数数目错误。 SQLSTATE=07001"。
消息 7343,级别 16,状态 2,第 1 行
链接服务器 "DB2" 的 OLE DB 访问接口 "IBMDADB2.DB2COPY1" 无法 INSERT INTO 表 "[DB2].[SAMPLE].[DB2ADMIN].[T1]"。

------解决方案--------------------------------------------------------
是1个表还是全部表都不能插入
登录用户没有INSERT 权限?
------解决方案--------------------------------------------------------
是不是这个连接账号没有update权限呢
------解决方案--------------------------------------------------------
T1表的ID字段是什么类型?能帖出T1的表结构吗?似乎跟其表结构有关
------解决方案--------------------------------------------------------
引用:
访问:
[DB2连接服务器名]..[DB2用户].[表名]


+1
  相关解决方案