ibatis/Oracle - INSERT 内的 SELECT 查询失败
我正在尝试使用 iBatis 执行插入操作。
INSERT INTO SCHEMA.TABLE
(FIELD1,
FIELD2,
FIELD3)
VALUES
(#field1#,
(SELECT
ANOTHER_FIELD
FROM
SCHEMA.TABLE
WHERE
FIELD4= #field2#),
#field2#)
内部选择查询总是失败并返回 NULL。但是,如果我仅在内部查询中用实际值替换#field2#,它就可以正常工作。 为什么 iBatis 不替换内部查询中的字段值?
有什么想法吗?
I'm trying to do an Insert operation using iBatis.
INSERT INTO SCHEMA.TABLE
(FIELD1,
FIELD2,
FIELD3)
VALUES
(#field1#,
(SELECT
ANOTHER_FIELD
FROM
SCHEMA.TABLE
WHERE
FIELD4= #field2#),
#field2#)
The inner select query always fails and returns NULL. But if I substitute #field2# with the actual value only in the inner query, it works fine.
Why is iBatis not substituting fieldvalues in the innerqueries?
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
以下使用单个子查询并省略
VALUES
关键字的方法适用于 Oracle,请尝试使用 iBatis:The following way using a single sub-query and omitting the
VALUES
keyword would work with Oracle, please try with iBatis:该语法对 Oracle 无效。请尝试以下操作:
That syntax is invalid for Oracle. Try the following: