DataSet进行批量更新

本文介绍如何利用System.Data.SqlClient命名空间中的SqlConnection、SqlCommand、SqlDataAdapter和SqlCommandBuilder类实现从SQL Server数据库中读取数据到DataTable,并将修改后的数据重新写回到数据库的过程。文章通过一个具体的例子展示了创建连接、执行SQL查询、填充数据表、更新数据库等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

URL:http://community.youkuaiyun.com/Expert/topic/4982/4982654.xml?temp=.8621485

System.Data.SqlClient.SqlConnection cnn = new System.Data.SqlClient.SqlConnection("连接字符串");
            System.Data.SqlClient.SqlCommand cm = new System.Data.SqlClient.SqlCommand();
               
            cm.Connection = cnn;
            cm.CommandText = "select top 10 * from table1";
            System.Data.SqlClient.SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter(cm);

            DataTable dt = new DataTable();
            da.Fill(dt);
            da.FillSchema(dt,System.Data.SchemaType.Mapped);//这是必须的,要载入数据表结构


            //下面插入多条数据
            for(int i=0;i<10;i++)
            {
                DataRow newRow = dt.NewRow();
                newRow[0] = 123;
                newRow[1] = "abc";
                //....
                dt.Rows.Add(newRow);
            }

            //下面重新写回数据库
            System.Data.SqlClient.SqlCommandBuilder cb = new System.Data.SqlClient.SqlCommandBuilder(da);//这句看起来没什么作用,但实际上很关键,如果没有这个就不能用da.Update方法
            cnn.Open();
            da.Update(dt);
            cnn.Close();

            dt.AcceptChanges();
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值