DM7 DUAL伪表兼容性问题分析

最近一个项目中碰到一个很奇怪的问题,拿到表结构和报错的SQL脱敏后如下:

create table TEST (ID INTEGER,NAME VARCHAR2(255) );   
insert into TEST values (1, 'test1');   
insert into TEST values (2, 'test2'); 

commit;

MERGE INTO  TEST T1
USING  dual T2 on (id=1)
WHEN MATCHED THEN UPDATE SET T1.NAME='TEST_DUAL'
WHEN NOT MATCHED THEN  INSERT (T1.ID, T1.NAME) VALUES (1,'TEST_DUAL' ); 

 

 在客户开发环境的版本上没有报错,在正式生产环境的版本上报有歧义的列名。

 于是我分析了一下两个环境dual伪表的表结构,发现了不同的地方:

select * from dual;  

--生产环境

--开发环境

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值