mysql 批量操作

mysql  批量操作

批量操作数据是利用 CommandBuilder  和 DataAdapter.Update() 方法 对数据库进行批量更新

说解: DataAdapter中有四个重要对象:SelectCommand,InsertCommand,UpdateCommand ,DeleteCommand  以SelectCommand 最为重要 只要设置好DataAdapter.SelectCommand(其中的CommandText) 其它三个可以由 CommandBuilder  自动生成。如下面看到的:

DataAdapter = new OracleDataAdapter(cmd);  OracleCommandBuilder ocb = new OracleCommandBuilder(dataAdapter); dataAdapter.SelectCommand.CommandText = "SELECT * FROM BOBIMPORT WHERE ROWNUM=0"; dataAdapter.InsertCommand = ocb.GetInsertCommand(); dataAdapter.UpdateCommand = ocb.GetUpdateCommand(); dataAdapter.DeleteCommand = ocb.GetDeleteCommand();

//dataAdapter.SelectCommand 对象其实就是对 cmd的引用。

总结:要正确使用 DataAdapter 的 DataAdapter.Update() 方法 必须要设置 dataAdapter.SelectCommand.CommandText 属性

时间: 2024-10-26 02:46:25

mysql 批量操作的相关文章

sqlServer、MySql批量操作插件

SqlServer: 1.EntityFramework.BulkInsert  .只适用于SqlServer.要想实现MySql批量插入,得自己实现一些方法,注册驱动之类,暂时没能力. 2.z.entityframwork.extensions  .适用于多钟数据库,包括mysql和sqlserver.但是是收费的,只当月免费.每月会发布一个免费版本,如此,每月都要更新版本才能免费使用.说是有个免费的版本,再找找看 MySql: 1.生成sql语句批量插入,类似: INSERT INTO Us

批量更新批量update

一:Oracle数据库 1:批量插入 <insert id="insertBatch" parameterType="Java.util.List" >    insert into RECIPEDETAIL (RDID, ROID, TYPE,       NAME, MEDIWEIGHT, MEDINUM,       MONEY, OPERATETIME, CHARGENUMBER,       REMARK, INSTRUCTION, AMOUN

Druid+mysql+mybatis做定时批量操作出现CommunicationsException: Communications link failure

最近使用Druid+mysql+mybatis实现定时批量操作,过一段时间就会抛出 2019-08-21 11:43:51.731 [task-3] ERROR com.alibaba.druid.pool.DruidPooledStatement - CommunicationsException, druid version 1.1.17, jdbcUrl : jdbc:mysql://localhost:3306/bim?serverTimezone=Asia/Shanghai&zeroD

通过shell脚本批量操作mysql数据库

创建建表语句 ============================================= 学生表:Student(Sno,Sname,Ssex,Sage,Sdept) ------(学号-主键,姓名,性别,年龄,所在系) ============================================= create table student( Sno int(10) NOT NULL COMMENT '学号', Sname varchar(16) NOT NULL C

MySQL数据库存储引擎与数据库优化

存储引擎 (1)MySQL可以将数据以不同的技术存储在文件(内存)中,这种技术就成为存储引擎. 每种存数引擎使用不同的存储机制.索引技巧.锁定水平,最终提供广泛且不同的功能. (2)使用不同的存储引擎也可以说不同类型的表 (3)MySQL支持的存储引擎 MyISAM InnoDB Memory CSV Archive 查看数据表的创建语句: SHOW CREATE TABLE 表名 相关概念: (1).并发控制:一个人读数据,另外一个人在删除这个数据. 当多个连接对记录进行修改时保证数据的一致性

MySQL 批量Dll操作(转)

概述 本章节介绍使用游标来批量进行表操作,包括批量添加索引.批量添加字段等.如果对存储过程.变量定义.预处理还不是很熟悉先阅读我前面写过的关于这三个概念的文章,只有先了解了这三个概念才能更好的理解这篇文章. MySQL变量和条件:http://www.cnblogs.com/chenmh/p/5203429.html PREPARE 预处理语句:http://www.cnblogs.com/chenmh/articles/5308085.html MySQL存储过程和函数:http://www.

JDBC实现往MySQL插入百万级数据

from:http://www.cnblogs.com/fnz0/p/5713102.html JDBC实现往MySQL插入百万级数据 想往某个表中插入几百万条数据做下测试, 原先的想法,直接写个循环10W次随便插入点数据试试吧,好吧,我真的很天真.... DROP PROCEDURE IF EXISTS proc_initData;--如果存在此存储过程则删掉 DELIMITER $ CREATE PROCEDURE proc_initData() BEGIN DECLARE i INT DE

数据迁移实战:基于Kettle的Mysql到DB2的数据迁移

From:https://my.oschina.net/simpleton/blog/525675 一.什么是ETL ETL,是英文 Extract-Transform-Load 的缩写,用来描述将数据从来源端经过抽取(extract).转换(transform).加载(load)至目的端的过程.ETL一词较常用在数据仓库,但其对象并不限于数据仓库. 二.Kettle简单说明 Kettle是一款国外开源的ETL工具,纯java编写,可以在Window.Linux.Unix上运行,数据抽取高效稳定

mysql 注意点

mysql 优化: 每个innodb 表都要有一个主键限制表上索引的数量,避免建立重复和冗余索引注意合理选择复合索引键值的顺序 优先选择符合存储需要的最小的数据类型 varchar(N) 中的N 代表的是字符数,而不是字节数 使用UTF8 存储汉字 varchar(255) = 765 个字节 过大的长度会消耗更多的内存 避免使用text,blob 数据类型 避免使用join 关联太多的表 每join 一个表会多占用一部分内存(join_buffer_size) 会产生临时表操作,影响查询效率