.net批量更新(插入、修改、删除)数据库

思路: 1. 设置DataTable中每行的状态标识,即调用DataRow的方法setAdded()、setModified()、Delete()

    2. 使用DataAdapter的Update(DataTable)方法

代码例子:

String connString = "........"; //连接字符串

String selectCommand = "select * from item";

SqlDataAdapter da = new SqlDataAdapter(selectCommand,connString);

SqlCommandBuilder cb = new SqlCommandBuilder(da); //自动生成对应的insert、update、delete语句

DataTable dt = new DataTable();

//填充dt
da.Fill(dt);

//更新dt中的数据和行状态(新增、删除、修改)
foreach (DataRow dr in dt.Rows)
{
  //更新数据的代码(略) 

  // 设置行状态

  // dr.SetAdded();
  // dr.SetModified();
  // dr.Delete();

}

//更新到数据库
da.Update(dt);

注:如果涉及的数据量比较大,则应该考虑数据库端的方案,如:先批量插入到数据库中,再在数据库端做批量更新的处理

时间: 2024-08-28 19:26:17

.net批量更新(插入、修改、删除)数据库的相关文章

Hibernate 插入,修改,删除,查询语句

/* *具体操作hibernate的类 *增加,删除,修改,按ID查询,模糊查询,查询全部 **/ public class PersonOperate { //在hibernate中所有操作都是由Session完成 public Session session = null; //在构造方法中实例化Session对象 public PersonOperate(){ //找出hibernate的配置 Configuration config = new Configuration().confi

jdbc-批量插入、批量删除、批量更新

一.JDBC的批量插入 JDBC批量插入主要用于数据导入和日志记录因为日志一般都是先写在文件下的等.    我用Mysql5.1.5的JDBC driver 分别对三种比较常用的方法做了测试   方法一,使用PreparedStatement加批量的方法   Java代码       try{ Class.forName("com.MySQL.jdbc.Driver"); conn = DriverManager.getConnection(o_url, userName,passwo

Delphi ADOQuery连接数据库的查询、插入、删除、修改

//查询记录 procedure TForm1.Button1Click(Sender: TObject); begin ADOQuery.Close; ADOQuery.SQL.Clear; ADOQuery.SQL.Add('select * from YourTABLE where 查询条件'); ADOQuery.Open; //插入记录 procedure TForm1.Button2Click(Sender: TObject); begin ADOQuery.Close; ADOQu

JDBC连接数据库(MySql)步骤,以及查询、插入、删除、更新等十一个处理数据库信息的功能。

主要内容:  JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能. 把十一个功能都放在一起. 一.JDBC连接数据库(编辑)步骤(主要有六个步骤).  1.注册驱动: Class.formName("com.mysql.jdbc.Driver");  2.获取连接:(1) param1:  要连接数据库的url-----> String url="jdbc:mysql:/

JDBC连接(MySql)数据库步骤,以及查询、插入、删除、更新等十一个处理数据库信息的功能

主要内容:  JDBC连接数据库步骤. 一个简单详细的查询数据的例子. 封装连接数据库,释放数据库连接方法. 实现查询,插入,删除,更新等十一个处理数据库信息的功能.(包括事务处理,批量更新等) 把十一个功能都放在一起. 安装下载的数据库驱动程序jar包,不同的数据库需要不同的驱动程序(这本该是第一步,但是由于属于安装类,所以我们放在最后) 一.JDBC连接数据库(编辑)步骤(主要有六个步骤).  1.注册驱动: Class.forName("com.mysql.jdbc.Driver"

Windows下Java程序实现对Mysql数据库的插入,删除,修改和查询

运行环境:Windows7,Eclipse,MySql,JDK1.7,mysql-connector-java-5.1.17-bin.jar 1 //import java.io.*; 2 import java.util.*; 3 import java.sql.*; 4 5 /** 6 * 7 * @date 2014-05-20 8 * @author asif 9 * @作用 java实现对mysql数据库的增减删查 10 * @bug 插入,删除,更新的时候异常停止 11 * 12 *

oracle创建、删除 数据库、建立表空间以及插入 删除 修改表

一.创建.删除数据库 oracle OraDb11g_home->配置和移植工具->Database configration  Assistant->...然后可以创建或者删除数据库 二.建立表空间 create tablespace inspur_tablespace   logging datafile 'D:\MyOracleBACK SQL\StudentDB\inspur_tablespace.dbf'  size 50m autoextend on next 50m max

php+mysqli实现批量执行插入、更新及删除数据的方法

本文实例讲述了php+mysqli实现批量执行插入.更新及删除数据的方法.分享给大家供大家参考.具体如下: mysqli批量执行插入/更新/删除数据,函数为 multi_query(). 下面的代码只是批量插入数据,事实上,插入数据.更新数据.删除数据等可以混合一起执行.查询时使用该函数,读取数据有点不太一样,具体参考如下代码: <?php //1.创建数据库连接对象 $mysqli = new MySQLi("localhost","root","

Hibernate批量更新和批量删除批量添加 1(转)

通常,在一个Session对象的缓存中只存放数量有限的持久化对象,等到Session对象处理事务完毕,还要关闭Session对象,从而及时释放Session的缓存占用的内存.批量处理数据是指在一个事务中处理大量数据.以下程序在一个事务中批量更新CUSTOMERS表中年龄大于零的所有记录的AGE字段:Transaction tx = session.beginTransaction();Iterator customers=session.createQuery("from Customer c