错误码:-2112
错误内容:有歧义的列名[%S]
默认情况下不支持子查询返回重名字段
create table t1 as select * from sysobjects;
create table t2 as select * from sysobjects;
--问题SQL
select *
from (select rownum as rn,
t1.id,
t1.name,
t2.id --重名字段
from t1,
t2
where t1.id = t2.id)
where rn <= 10;
执行失败(语句1)
-2112: 第15 行附近出现错误:
有歧义的列名[ID]
方案1:修改SQL代码,利用别名,避免字段名称重复;
方案2:调整参数 ERROR_COMPATIBLE_FLAG=1,sp_set_para_value(1,‘ERROR_COMPATIBLE_FLAG’,1);
参数释义:
ERROR_COMPATIBLE_FLAG,默认0,动态、会话级,是否对子查询同名列进行报错。0:报错;1:不报错
文章
阅读量
获赞
