加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 使用select和参数进行DB2插入

发布时间:2020-12-12 08:49:17 所属栏目:MsSql教程 来源:网络整理
导读:我想做这样的事情: INSERT INTO TABLEA( COLUMN1,COLUMN2,COLUMN 3)SELECT FOOBAR,DOOBAR,?FROM TABLEB 然后通过Spring JDBC将其发送到JDBC来更新… simpleJdbcTemplate.update( mySqlFromAbove,someVariableToReplaceQuestionMark ); 这甚至可能吗如果在构
我想做这样的事情:
INSERT INTO TABLEA
(
 COLUMN1,COLUMN2,COLUMN 3
)
SELECT FOOBAR,DOOBAR,?
FROM TABLEB

然后通过Spring JDBC将其发送到JDBC来更新…

simpleJdbcTemplate.update( mySqlFromAbove,someVariableToReplaceQuestionMark );

这甚至可能吗如果在构建SQL查询时将问号替换为硬编码的值,则可以正常工作,但是我不想打开自己的SQL注入…

编辑 –
我得到
嵌套异常是com.ibm.db2.jcc.c.SqlException:DB2 SQL错误:SQLCODE:-418,SQLSTATE:42610,SQLERRMC:null
这似乎表明
使用参数标记无效?

解决方法

您需要键入转换参数标记,以便DB2知道预期的内容.

例如:

INSERT INTO TABLEA
(
 COLUMN1,cast(? as int)
FROM TABLEB

显然,转换为适当的类型 – int就是一个例子.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读