mybatis 注解写法 多层嵌套foreach,调用存储过程,批量插入数据
@Select("<script>" +
"DECLARE @edi_Invoice_Details edi_Invoice_Details;" +
"DECLARE @edi_Invoice_OrderItem edi_Invoice_OrderItem;" +
"INSERT INTO @edi_Invoice_Details (" +
"oldso,so,po,invoiceTaxNo,invoiceType,invoiceTitle,\n" +
"invoiceAddress,invoiceState,invoiceTaxRate,invoiceContent,\n" +
"invoiceRatePrice,invoiceNoTaxPrice,invoiceId,invoiceDate,invoiceTaxPrice,invoiceNO,invoiceCode" +
" ) " +
"VALUES " +
"<foreach collection=\"ediInvoiceDetails\" item=\"ediInvoiceDetail\" index=\"index\" separator=\",\" close=\";\">" +
"( " +
"#{ediInvoiceDetail.oldso},#{ediInvoiceDetail.so},#{ediInvoiceDetail.po},#{ediInvoiceDetail.invoiceTaxNo},#{ediInvoiceDetail.invoiceType},#{ediInvoiceDetail.invoiceTitle}," +
"#{ediInvoiceDetail.invoiceAddress},#{ediInvoiceDetail.invoiceState},#{ediInvoiceDetail.invoiceTaxRate},#{ediInvoiceDetail.invoiceContent},#{ediInvoiceDetail.invoiceRatePrice}," +
"#{ediInvoiceDetail.invoiceNoTaxPrice},#{ediInvoiceDetail.invoiceId},CONVERT(DATETIME,#{ediInvoiceDetail.invoiceDate},105),#{ediInvoiceDetail.invoiceTaxPrice},"+
"#{ediInvoiceDetail.invoiceNO},#{ediInvoiceDetail.invoiceCode}"+
" )" +
"</foreach> " +
"<foreach collection=\"ediInvoiceDetails\" item=\"ediInvoiceDetail\" index=\"index\" open=\"begin\" close=\";end;\" separator=\";\">" +
"INSERT INTO @edi_Invoice_OrderItem ( " +
"invoiceDetailsId, so, bomCode, agreementPrice,productAmount, productName " +
") " +
"VALUES " +
"<foreach collection=\"ediInvoiceDetail.sodetails\" item=\"sodetail\" index=\"index\" separator=\",\">( " +
"#{sodetail.invoiceDetailsId},#{sodetail.so},#{sodetail.bomCode},#{sodetail.agreementPrice},#{sodetail.productAmount},#{sodetail.productName} "+
" )</foreach></foreach> " +
"EXEC up_EDI_Sync_SaveEDIInvoiceDetails @edi_Invoice_Details,@edi_Invoice_OrderItem"+
"</script>")
@Options(statementType = StatementType.CALLABLE)
void saveEdiInvoiceDetails(@Param("ediInvoiceDetails") List<EDIInvoiceDetails> ediInvoiceDetails);
mybatis 注解写法 多层嵌套foreach,调用存储过程,批量插入数据的更多相关文章
- PG数据库创建并执行存储过程批量插入数据
记录一下PG数据库创建并执行存储过程批量插入数据的SQL: create or replace function addId() returns boolean AS $BODY$ declare i ...
- sqlserver存储过程批量插入数据
在系统中经常会遇到向数据库中批量插入数据情况,存储过程中没有数组,只有通过字符串分割循环插入,下面是一个本人研究的一个例子: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 c ...
- mysql应用存储过程批量插入数据
--批量插入数据的sql语句 delimiter $$ DROP PROCEDURE IF EXISTS `test.sp_insert_batch` $$ CREATE DEFINER =`root ...
- Oracle 存储过程批量插入数据
oracle 存储过程批量插入大量数据 declare numCount number; userName varchar2(512); email varchar2(512); markCommen ...
- mysql利用存储过程批量插入数据
最近需要测试一下mysql单表数据达到1000W条以上时增删改查的性能.由于没有现成的数据,因此自己构造,本文只是实例,以及简单的介绍. 首先当然是建表: [sql]view plaincopy CR ...
- 使用Oracle的存储过程批量插入数据
原文地址:http://www.cnblogs.com/liaoyu/p/oracle-procedure-batch-insert.html 作者:L君还在说之乎者也 最近在工作中,需要使用生成一些 ...
- mysql存储过程批量插入数据
DROP TABLE IF EXISTS TeachersInfo; CREATE TABLE TeachersInfo ( id INT NOT NULL AUTO_INCREMENT, teach ...
- postgres 使用存储过程批量插入数据
參考资料(pl/pgsql 官方文档): http://www.postgresql.org/docs/9.3/static/plpgsql.html create or replace functi ...
- mybatis foreach批量插入数据:Oracle与MySQL区别
mybatis foreach批量插入数据:Oracle与MySQL不同点: 主要不同点在于foreach标签内separator属性的设置问题: separator设置为","分 ...
随机推荐
- pip提示Did not provide a commend
今天小编想要查看一下自己安装的pip版本,并且使用pip查看selenium版本等,结果在cmd输入pip,提示Did not provide a commend,如下所示: 在网上查询了很多方法,比 ...
- selenium IDE脚本编辑与操作
1.编辑一行命令 在Table标签下选中某一行命令,命令由command.Target.value三部分组成.可以对这三部分内容那进行编辑. 然后右击这行命令,选择“Execute this comm ...
- caca需要用到x11作为图形输出
编译错误:no output drivers were selected!. yum -y install xcb-proto yum -y install libxcb-devel.x86_64 l ...
- [luoguP1040] 加分二叉树(DP)
传送门 区间DP水题 代码 #include <cstdio> #include <iostream> #define N 41 #define max(x, y) ((x) ...
- poj 3648 2-sat 输出任意一组解模板
转载地址:http://blog.csdn.net/qq172108805/article/details/7603351 /* 2-sat问题,题意:有对情侣结婚,请来n-1对夫妇,算上他们自己共n ...
- 真--可并堆模板--BZOJ2333: [SCOI2011]棘手的操作
n<=300000个点,开始是独立的,m<=300000个操作: 方法一:单点修改.查询,区间修改.查询?等等等等这里修改是块修改不是连续的啊,那就让他连续呗!具体方法:离线后,每次连接两 ...
- 乱记结论之OI常用四大数列
一.斐波那契数列 $f(0)=1,f(1)=1,f(i)=f(i-1)+f(i-2) \ \ \ \ (i>=2)$ 经典的解释是兔子生小孩,第0年一对兔子,一对兔子需要一年长大,后面每年都生小 ...
- Linux下汇编语言学习笔记30 ---
这是17年暑假学习Linux汇编语言的笔记记录,参考书目为清华大学出版社 Jeff Duntemann著 梁晓辉译<汇编语言基于Linux环境>的书,喜欢看原版书的同学可以看<Ass ...
- Spring基础入门(三)
一.Spring的jdbcTemplate操作 (1)Spring是一站式框架,对于javaee三层,每一层都有解决技术. web层:springMVC service:spring的ioc dao层 ...
- MySQL JDBC URL参数(转)
MySQL的 JDBC URL格式: jdbc:mysql://[host][,failoverhost...][:port]/[database] » [?propertyName1][=prope ...