• SqlDataAdapter有关InsertCommand,UpdateCommand,DeleteCommand 实例


    //InsertCommand
                using (SqlConnection conn = new SqlConnection(connectionstring))
                {
                    conn.Open();
                    DataTable dtInsert = new DataTable();
                    dtInsert.Columns.Add("DeptID", typeof(int));
                    dtInsert.Columns.Add("DeptName", typeof(string));
                    dtInsert.Rows.Add(new object[] { "1", "技术部" });
                    dtInsert.Rows.Add(new object[] { "2", "招商部" });
                    dtInsert.Rows.Add(new object[] { "3", "信息部" });
    
                    SqlDataAdapter adapter = new SqlDataAdapter();
                    adapter.InsertCommand = new SqlCommand("insert into Dept(DeptID,DeptName) values(@DeptID,@DeptName)", conn);
                    adapter.SelectCommand = new SqlCommand("select * from Dept where 1=0", conn);//仅为了获得框架
                    adapter.InsertCommand.Parameters.Add("DeptID", SqlDbType.Int);
                    adapter.InsertCommand.Parameters.Add("DeptName", SqlDbType.VarChar);
    
                    adapter.InsertCommand.Parameters["DeptID"].SourceColumn = "DeptID";
                    adapter.InsertCommand.Parameters["DeptName"].SourceColumn = "DeptName";
                    //adapter.InsertCommand.Parameters["AddDate"].Value = DateTime.Now;//直接赋值
    
                    adapter.InsertCommand.UpdatedRowSource = UpdateRowSource.None;
                    adapter.Fill(dtInsert);
                    if (dtInsert.Rows.Count > 0)
                    {
                        adapter.Update(dtInsert);
                    }
                }

    2,UpdateCommand

     //UpdateCommand
                using (SqlConnection conn = new SqlConnection(connectionstring))
                {
                    conn.Open();
                    DataSet ds = new DataSet();
                    string sql = "select * from Dept";
                    SqlDataAdapter adapate = new SqlDataAdapter(sql, conn);
                    adapate.Fill(ds, "table1");
    
                    foreach (DataRow datarow in ds.Tables[0].Rows)
                    {
                        datarow["DeptName"] = "sc";//ai->sc
                    }
                    SqlCommandBuilder builder = new SqlCommandBuilder(adapate);
                    adapate.Update(ds, "table1");
                }

    3,DeleteCommand

    //DeleteCommand
                using (SqlConnection conn = new SqlConnection(connectionstring))
                {
                    conn.Open();
                    DataSet ds = new DataSet();
                    string sql = "select * from Dept";
                    //string sql = "select * from Dept where deptid=1";
                    SqlDataAdapter adapter = new SqlDataAdapter(sql, conn);
                    adapter.Fill(ds, "table1");
    
                    adapter.DeleteCommand = new SqlCommand("delete from Dept", conn);
                    //adapter.DeleteCommand = new SqlCommand("delete from Dept where deptid=@deptid", conn);
                    //adapter.DeleteCommand.Parameters.Add("deptid", SqlDbType.Int);
                    //adapter.DeleteCommand.Parameters["deptid"].SourceColumn = "deptid";
                    
                    ds.Tables["table1"].Rows[ds.Tables["table1"].Rows.Count - 1].Delete();
                    adapter.Update(ds, "table1");
                }
  • 相关阅读:
    C++输入与输出
    数组与指针
    MFC+WinPcap编写一个嗅探器之零(目录)
    netty源码分析之揭开reactor线程的面纱(二)
    netty源码分析之揭开reactor线程的面纱(一)
    Vert.x 线程模型揭秘
    理解 RxJava 的线程模型
    Java RESTful 框架的性能比较
    Java借助CountDownLatch完成异步回调
    在 Java 中运用动态挂载实现 Bug 的热修复
  • 原文地址:https://www.cnblogs.com/xvqm00/p/2543124.html
Copyright © 2020-2023  润新知