private static String ADD_ATTR_EXT_ITEM="insert into attr_ext_item(attr_ext_main_key,attr_name_key,attr_type,data_type,mode,
                             tolerance,target_value,attr_lower_value,attr_higher_value,fetch_attr_group,
fetch_attr_name,calc_expression,serial_port,serial_port_baud_rate,serial_port_data_format,
pages)";
public boolean saveAttrExtItem(final List<AttrExtItem> listAttrExtItem,final int attrExtMainid) {
boolean result = true;
if (listAttrExtItem == null || listAttrExtItem.size() == 0)
return false;
StringBuffer buffer = new StringBuffer();
try {
buffer.append("begin;" );
for (int i = 0; i < listAttrExtItem.size(); i++) {
AttrExtItem att = listAttrExtItem.get(i);
buffer.append(ADD_ATTR_EXT_ITEM);
buffer.append(" values("
+attrExtMainid
+ ", " + att.getAttrNameKey()
+ ", '" + att.getAttrType()
+ "', '" + att.getDataType()
+ "', '" + att.getMode()
+ "', '" + att.getTolernace()
+ "', '" + att.getTargetValue()
+ "', '" + att.getAttrLowerValue()
+ "', '" + att.getAttrHigherValue()
+ "','" + att.getFetchAttrGroup()
+ "', '" + att.getFetchAttrName()
+ "', '" + att.getCalcExpression()
+ "', '" + att.getSerialPort()
+ "', " + att.getSerialPortbAUDRate()
+ ", '" + att.getSerialPortDataFormat()
+ "', '" + att.getPages()
+"'"+ ");");
}
buffer.append("commit;");
log.info("Add AttrExtItem sql: " + buffer.toString());
this.getJdbcTemplate2().update(buffer.toString());
} catch (Exception e) {
result = false;
log.error(e);
}
return result;
}

private static String ADD_ATTR_EXT_ITEM="insert into attr_ext_item(attr_ext_main_key,attr_name_key,attr_type,data_type,mode,tolerance,target_value,attr_lower_value,attr_higher_value,fetch_attr_group,fetch_attr_name,calc_expression,serial_port,serial_port_baud_rate,serial_port_data_format,pages)";public boolean saveAttrExtItem(final List<AttrExtItem> listAttrExtItem,final int attrExtMainid) {boolean result = true;if (listAttrExtItem == null || listAttrExtItem.size() == 0)return false;StringBuffer buffer = new StringBuffer();try {buffer.append("begin;" );for (int i = 0; i < listAttrExtItem.size(); i++) {AttrExtItem att = listAttrExtItem.get(i);buffer.append(ADD_ATTR_EXT_ITEM);buffer.append(" values("+attrExtMainid+ ", " + att.getAttrNameKey()+ ", '" + att.getAttrType()+ "', '" + att.getDataType()+ "', '" + att.getMode()+ "', '" + att.getTolernace()+ "', '" + att.getTargetValue()+ "', '" + att.getAttrLowerValue()+ "', '" + att.getAttrHigherValue()+ "','" + att.getFetchAttrGroup()+ "', '" + att.getFetchAttrName()+ "', '" + att.getCalcExpression()+ "', '" + att.getSerialPort()+ "', " + att.getSerialPortbAUDRate()+ ", '" + att.getSerialPortDataFormat()+ "', '" + att.getPages()+"'"+ ");");}buffer.append("commit;");log.info("Add AttrExtItem sql: " + buffer.toString());this.getJdbcTemplate2().update(buffer.toString());} catch (Exception e) {result = false;log.error(e);}return result;}

sql中批量插入begin的使用的更多相关文章

  1. C# 批量插入表SQLSERVER SqlBulkCopy往数据库中批量插入数据

    #region 帮助实例:SQL 批量插入数据 多种方法 /// <summary> /// SqlBulkCopy往数据库中批量插入数据 /// </summary> /// ...

  2. 向mysql中批量插入数据的性能分析

    MYSQL批量插入数据库实现语句性能分析 假定我们的表结构如下 代码如下   CREATE TABLE example (example_id INT NOT NULL,name VARCHAR( 5 ...

  3. SQL 2005批量插入数据的二种方法

    SQL 2005批量插入数据的二种方法 Posted on 2010-07-22 18:13 moss_tan_jun 阅读(2635) 评论(2) 编辑 收藏 在SQL Server 中插入一条数据 ...

  4. mybatis中批量插入的两种方式(高效插入)

    MyBatis简介 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以使用 ...

  5. SQL中批量删除被注入的恶意代码的方法

    下文将为您介绍SQL中批量删除被注入的恶意代码的方法,供您参考,如果您也遇到了这样的问题,不妨一看,相信对您会有所帮助. 1,如果你的数据表很少的话,那么写几条简单的sql就搞定了 对于表中的nvch ...

  6. PL/SQL中批量执行SQL脚本(不可把所有的语句都复制到New SQL Windows)

    PL/SQL中批量执行SQL脚本,不可把所有的语句都复制到New SQL Window,因为这样会导致缓冲区过大而进程卡死! 最好的办法是将要执行的SQL脚本存放到指定文件中,如C:\insert.s ...

  7. MyBatis向数据库中批量插入数据

    Foreach标签 foreach: collection:指定要遍历的集合; 表示传入过来的参数的数据类型.该参数为必选.要做 foreach 的对象,作为入参时,List 对象默认用 list 代 ...

  8. sql server中批量插入与更新两种解决方案分享(存储过程)

    转自http://www.shangxueba.com/jingyan/1940447.html 1.游标方式 SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONG ...

  9. Oracle中批量插入

    为了防止OracleConnection的重复打开和关闭,使用begin end:将sql语句包在里面,然后一次性执行提高插入的效率. 下面代码中要插入的数据在list集合中,如果list集合的cou ...

随机推荐

  1. python traceback获取详细的异常信息

       运行结果 : 用try except 会报出报错信息,但是没有具体哪个地方报错,多少行,这样不利于查找报错信息 这时我们就可以使用traceback模块 运行结果:    如上图,报错信息会具体 ...

  2. 06_ for 练习 _ 年利率

    <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <title&g ...

  3. Eureka源码解读

    Eureka是我接触分布式软件和服务的第一个框架,所以其原理和实现我的好好研究一下,Eureka可以参看这篇博文:http://springcloud.cn/view/29 初学者会在教程中看到使用@ ...

  4. 《MySQL技术内幕》读书笔记

    序章 MySQL的安装 源码编译安装 MySQL的配置 基础配置 mysqld程序:语言设置 mysqld程序:通信.网络.信息安全 mysqld程序:内存管理.优化.查询缓存区 mysqld程序:日 ...

  5. scheduling while atomic和bad: scheduling from the idle thread(转)

    https://blog.csdn.net/shanzhizi/article/details/22949121 https://blog.csdn.net/wwwtovvv/article/deta ...

  6. Tarjan求割点 || Luogu P3388 【模板】割点(割顶)

    题面:P3388 [模板]割点(割顶) 题解:无 代码: #include<cstdio> #include<iostream> #include<cstring> ...

  7. 关于vue页面多了之后,webpack热更新速度慢的解决办法

    vue项目大了之后,每次热更新都要10多秒的时间, 网上找了一大堆发现一个有用的办法 "env": { "development":{ "plugin ...

  8. DjangoRestFramework学习三之认证组件、权限组件、频率组件、url注册器、响应器、分页组件

    DjangoRestFramework学习三之认证组件.权限组件.频率组件.url注册器.响应器.分页组件   本节目录 一 认证组件 二 权限组件 三 频率组件 四 URL注册器 五 响应器 六 分 ...

  9. body里面的onload和window.onload,window.load的区别

    区别:body里面的onload是在“页面加载完成后执行的动作”window里面的onload是在“页面加载时执行的动作” window.load这个应该只是表明事件方法,但并未执行,比如click表 ...

  10. [daily]gtk程序不跟随系统的dark主题

    问题描述: 我的系统主题是dark的.在使用mysql-workbench是,里边的一些线条就跟随了系统文字的主要使用了灰白色. 这样在白色画布里就看不见这些线条了. 方法: 设置mysql-work ...