【已解决】求助大神!利用DBUtils执行“MERGE INTO”语句报错
金蝶云社区-许聪文
许聪文
1人赞赏了该文章 985次浏览 未经作者许可,禁止转载编辑于2017年01月01日 19:44:58

根据Sql语法写的,在Sql可以允许成功但是在服务插件的EndOperationTransaction缺不行,求大神指教
第一种: string sql66 = string.Format(@"/*dialect*/MERGE INTO st_T_STK_INVENTORY_EXP a using (select FID from T_STK_INVENTORY where FID='{0}') b on (a.FID = b.FID)
WHEN MATCHED THEN Update set a.F_ST_QTY=a.F_ST_QTY+{1},a.F_ST_WTQTY=a.F_ST_WTQTY+{2},a.F_ST_PAIRQTY=a.F_ST_PAIRQTY+{3},a.F_st_CountQty=a.F_st_CountQty+{4}
WHEN NOT MATCHED THEN insert values('{0}','','','0','','0','{1}','{2}','{4}','{3}');", FID, F_st_Qty, F_ST_WTQTY, F_ST_COUNTQTY, F_ST_PAIRQTY);

第二种: string sql66 = string.Format(@"MERGE INTO st_T_STK_INVENTORY_EXP a using (select FID from T_STK_INVENTORY where FID='{0}') b on (a.FID = b.FID)
WHEN MATCHED THEN Update set a.F_ST_QTY=a.F_ST_QTY+{1},a.F_ST_WTQTY=a.F_ST_WTQTY+{2},a.F_ST_PAIRQTY=a.F_ST_PAIRQTY+{3},a.F_st_CountQty=a.F_st_CountQty+{4}
WHEN NOT MATCHED THEN insert values('{0}','','','0','','0','{1}','{2}','{4}','{3}')", FID, F_st_Qty, F_ST_WTQTY, F_ST_COUNTQTY, F_ST_PAIRQTY);