Chinaunix首页 | 论坛 | 博客
  • 博客访问: 980023
  • 博文数量: 152
  • 博客积分: 4937
  • 博客等级: 上校
  • 技术积分: 1662
  • 用 户 组: 普通用户
  • 注册时间: 2007-10-05 16:55
文章分类

全部博文(152)

文章存档

2013年(12)

2012年(6)

2011年(58)

2010年(43)

2009年(1)

2008年(15)

2007年(17)

我的朋友

分类: WINDOWS

2011-06-27 15:15:00

代码如下:
MERGE Into ywk_nmjtjbsj Y
  Using (Select * From KSXNH_JZK.jzk_nmjtjbsj  Where NVL(XGBZ,'1')!='1' And  nvl(sfydq,'2')='j9') J
  On (J.ID=Y.ID)
  When MATCHED THEN
    UPDATE Set 
           Y.ID          =  J.ID ,
           Y.JTBM        =  J.JTBM,
           ···
执行的时候报无法更新on子句中引用的列'Y'.'ID'


这是存储过程中的一段代码,请高手、指点如何解决、



已解决:
       ON中Y.ID已经与J.ID进行了匹配,所以在SET中不能再对Y.ID赋值,去掉该行即可。
 
---------------------------------------------------------
 
MERGE INTO T T1
USING (SELECT ''1001'' AS a,2 AS b FROM dual) T2
ON ( T1.a=T2.a)
WHEN MATCHED THEN
  UPDATE SET T1.b = T2.b
WHEN NOT MATCHED THEN 
  INSERT (a,b) VALUES(T2.a,T2.b);

查询结果,OK!

阅读(7897) | 评论(0) | 转发(0) |
0

上一篇:artdialog控件问题

下一篇:java中路径总结

给主人留下些什么吧!~~