sql2005通过odbc向oracle中insert数据报下列错误,请高手指教!

liulianxin 2012-11-29 11:06:59
语句为:
insert into openquery(TPEMR,'select ID,姓名 from TPEMR')
select ID,姓名 from hmis..dbo.zy_his b
where not exists(select ID from openquery(TPEMR,'select ID,姓名 from TPEMR') a where a.ID=b.id)
说明TPEMR为链接服务器名,用select * from openquery(TPEMR,'select ID,姓名 from TPEMR')
能查到数据说明链接服务器是通的。为什么执行insert报下列错误。

链接服务器"TPEMR"的 OLE DB 访问接口 "MSDAORA" 返回了消息 "多步操作产生错误。请检查每一步的状态值。"。
消息 7344,级别 16,状态 1,第 1 行
由于列 "PATIENT_NAME",链接服务器 "TPEMR" 的 OLE DB 访问接口 "MSDAORA" 无法 INSERT INTO 表 "[MSDAORA]"。数据值违反了该列的架构。
...全文
82 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuan.ye 2012-11-29
  • 打赏
  • 举报
回复
insert into openquery(ID,姓名 ) ( select ID,姓名 from hmis..dbo.zy_his b where not exists(select ID from openquery(TPEMR,'select ID,姓名 from TPEMR') a where a.ID=b.id) ); 1、语法好像不对; 2、没有过odbc,但是连接写在表前好像还是比较通常的做法;

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧