zoukankan      html  css  js  c++  java
  • 使用DataSet数据集删除记录

    使用DataSet删除记录和使用DataSet更新记录非常的相似,DataSet删除记录的步骤如下所示。

    q  创建一个Connection对象。

    q  创建一个DataAdapter对象。

    q  初始化适配器。

    q  使用数据适配器的Fill方法执行SELECT命令,并填充DataSet。

    q  执行SqlCommandBuilder方法生成UpdataCommand方法。

    q  创建DataTable对象并指定相应的DataSet中的表。

    q  创建DataRow对象并查找需要修改的相应行。

    q  使用Delete方法删除该行。

    q  使用Updata方法进行数据更新。

    在删除记录前,首先需要创建连接,示例代码如下所示。

               string str = "server='(local)';database='mytable';uid='sa';pwd='sa'";

                SqlConnection con = new SqlConnection(str);

                con.Open();

                string strsql = "select * from mynews";

    上述代码创建了与数据库的连接,并编写SQL查询语句来填充DataSet。填充DataSet对象需使用DataAdapter,示例代码如下所示。

                SqlDataAdapter da = new SqlDataAdapter(strsql, con);

                SqlCommandBuilder build = new SqlCommandBuilder(da);

                DataSet ds = new DataSet();

                da.Fill(ds, "datatable");

    编写完成后,需要创建DataTable对象对DataSet中相应的数据进行操作,其代码和更新记录基本相同,示例代码如下所示。

                DataTable tb = ds.Tables["datatable"];

                tb.PrimaryKey = new DataColumn[] { tb.Columns["id"] };

                DataRow row = tb.Rows.Find(3);

    在进行删除之前,同样需要找到相应的行,来指定删除语句所需要删除的行,示例代码如下所示。

                row.Delete();

    读者可以看到,DataSet删除方法与更新方法不同的地方只操作语句的不同,在更新中使用的是Update()方法,而在删除中使用的是Delete()方法。

    注意:当使用Delete方法删除记录行的时候,可以通过调用DataRow对象的RejectChanges方法取消对记录的删除,当使用该方法删除记录行时,该行的状态会恢复为Unchanged。

    在删除完毕后,同样需要保持DataSet中的数据和数据库中的数据的一致性,示例代码如下所示。

                da.Update(ds, "datatable");

    使用Update方法能够使DataSet中的数据和数据库中的数据保持一致性,在ASP中,这种方法也比较常见。

  • 相关阅读:
    课堂作业04 2017.10.27
    课程作业 03 动手动脑 2017.10.20
    课程作业 03 2017.10.20
    HDU 3974 Assign the task
    POJ 2155 Matrix
    POJ 2481 Cows
    HDU 3038 How Many Answers Are Wrong
    CS Academy Array Removal
    POJ_1330 Nearest Common Ancestors LCA
    CF Round 427 D. Palindromic characteristics
  • 原文地址:https://www.cnblogs.com/zywf/p/4605316.html
Copyright © 2011-2022 走看看