Oracle+MyBatis使用动态SQL实现批量插入插入字段时,不确定

Oracle+MyBatis使用动态SQL实现批量插入插入字段时,不确定
最近,我在制作项目时遇到了一个非常纠结的问题。由于业务之间的关系,DB的数据表无法确定,而且在使用过程中可能会增加字段,这给我插入时带来了很多麻烦。

让我们看看我在一天结束时做了些什么。
<!{一{
插入tg_fcst_lines($ { linecolumn })
选择的结果。*,sq_fcst_lines.nextval从(
} } >

(选择

# { _value }

从双)
因为数据表是不确定的,所以我不能确定我要插入的字段,而且因为它是大量插入的,所以很难确定值的值。

参数我通过MyBatis是地图:
图insertmap =新HashMap();
InsertMap.put(linecolumn
InsertMap.put(linelist
linecolumn是一个字符串,并linelist是列表:
表linelist =新的ArrayList();
linelist存储在地图,对应的数据表字段的映射键,值是插入的值,这样我们就可以通过foreach提取列表的值,如INSERT语句的值,但由于映射出的顺序,顺序存储。

遍历时,值的顺序并不总是相同的。因此,为了确保插入字段和值可以是一一对应的,我们可以从map中提取密钥,并将字符串作为插入字段迭代。
字符串linecolumn =SQL; / /马赛克,作为INSERT语句的一部分
{ }查看java plaincopy
地图线路地标图= linelist.get(0);
对于(字符串键:linemap.keyset()){
linecolumn + =键+
}
linecolumn =line_id ;
这里的行)id是一个自增字段,在语句中直接写入序列是错误的,因此第一遍历列表将获取作为结果的值,并提取结果的所有值,并将序列作为插入值。
两foreace嵌套实现价值时是采取与外foreach遍历列表,并在内层foreach遍历图。

本文介绍了以上内容。Oracle + MyBatis使用动态SQL来描述所有批量插入插入字段时,不确定。希望你能喜欢。
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部