zoukankan      html  css  js  c++  java
  • SqlDataAdapter.Update()方法与SqlCommandBuilder

    用SqlDataAdapter操纵数据集时最常用到的就是Fill()与Update()方法。

    Fill()填充DataSet或DataTable,而Update()就是将DataSet或DataTable中的改变更新到数据库中。若没有用Update()方法,DataSet或DataTable中数据的改变并不会影响数据库中的数据。

    示例:用SqlDataAdapter填充DataTable,这里用的是Northwind数据库中的Employees表

    string strcon1 = "Data Source=.;Initial Catalog=Northwind;Integrated Security=True";

                using (SqlConnection conn = new SqlConnection(strcon1))

                {

                    conn.Open();

                    string strsql = "select * from employees";

                    SqlCommand cmd = new SqlCommand(strsql, conn);

                     ad = new SqlDataAdapter();

                    ad.SelectCommand = cmd;

                    dt = new DataTable("employees");

                    ad.Fill(dt);

                    ds = new DataSet();

                    ds.Tables.Add(dt);

                    this.dataGridView1.DataSource = ds.Tables[employees];

               

    增加一行记录:

    //新增加一行

                    DataRow newRow = dt.NewRow();

                    newRow["EmployeeID"] = 11;

                    newRow["LastName"] = "Bill";

                    newRow["FirstName"] = "Gata";

                    dt.Rows.Add(newRow);

    更新:用Update更新时提示要有SqlDataAdapter的InsertCommand ,这里我们可以用SqlCommandBuilder自动为我们生成

                    //使用SqlCommandBuilder自动生成带有Insert语句的InsertCommand

                    SqlCommandBuilder cb = new SqlCommandBuilder(ad);

                    ad.InsertCommand = cb.GetInsertCommand();

                    //将DataSet中的数据更新到数据库中

                    ad.Update(ds, "employees");

    }

  • 相关阅读:
    [C语言] 交换排序之冒泡排序的特性及实现
    [C语言] 选择排序之鸡尾酒排序的特性及实现
    [C语言] 选择排序之直接选择排序的特性及实现
    计蒜客 蓝桥杯模拟 快速过河
    计蒜客 蓝桥杯模拟 瞬间移动 dp
    计蒜客 蓝桥杯模拟 充话费
    计蒜客 蓝桥杯模拟二 区间合并 打扫教室
    商品类目短文本分类总结
    SpringBoot项目创建及入门基础
    Joyful HDU
  • 原文地址:https://www.cnblogs.com/bobo41/p/3096467.html
Copyright © 2011-2022 走看看