批量插入数据方法

   ds.ReadXml("a.xml");

//生成动态inset语句
   StringBuilder builder1 = new StringBuilder("insert into");
   builder1.Append(" ").Append(tableName).Append("(");
   ListViewItem l = new ListViewItem();
   for (int i = 0; i < listView1.Items.Count; i++)
   {
       builder1.Append(listView1.Items[i].SubItems[0].Text).Append(",").Append(" ");               
   }
   builder1.Replace(builder1.ToString(), builder1.ToString().Substring(0, builder1.ToString().Length - 2).ToString());
   builder1.Append(") values (");
   foreach (DataRow dr in ds.Tables[0].Rows)
   {
       StringBuilder builder2 = new StringBuilder();
       for (int i = 0; i < listView1.Items.Count; i++)
       {
           string s = listView1.Items[i].SubItems[1].Text;
           builder2.Append("'").Append(dr[s]).Append("',").Append(" ");
       }
       builder2.Replace(builder2.ToString(), builder2.ToString().Substring(0, builder2.ToString().Length - 2).ToString());
       string insertSQL = builder1.ToString() + builder2.ToString() + ")";
       OracleCommand cmd = new OracleCommand(insertSQL, OracleCon);
       cmd.ExecuteNonQuery();
    }
    ds.Dispose();

 


---------------------------------------------------------------------------------------------------------------------------
批量插入数据方法2
public void InsertMessage(DataSet ds)
 {
            SqlCommand cmd = new SqlCommand("insert into Users([name],[sex],[class],[major],[telephone]) values(@name,@sex,@class,@major,@telephone)",cn);
            cmd.Parameters.Add("@name",SqlDbType.NChar,32,"name");
            cmd.Parameters.Add("@sex", SqlDbType.NChar, 2, "sex");
            cmd.Parameters.Add("@class", SqlDbType.NChar, 32, "class");
            cmd.Parameters.Add("@major", SqlDbType.NChar, 16, "major");
            cmd.Parameters.Add("@telephone", SqlDbType.NChar, 32, "telephone");
            da = new SqlDataAdapter();
            da.InsertCommand = cmd;
            cn.Open();
            da.Update(ds,Common.Class1.table_Users);
            cn.Close();
        }
 protected void insertsubmit_Click(object sender, EventArgs e)
       {
           DataAccess.Class1 dac = new DataAccess.Class1();
           DataSet ds = dac.getUsers(Common.Class1.sql_getUser, Common.Class1.table_Users);
           DataRow dr=ds.Tables[0].NewRow();
           dr["name"] = this.TextBox1.Text;
           dr["sex"] = this.DropDownList1.Text;
           dr["class"] = this.TextBox3.Text;
           dr["major"] = this.TextBox4.Text;
           dr["telephone"] = this.TextBox5.Text;
           ds.Tables[0].Rows.Add(dr);
           dac.updataUsersByStoredProcedure(ds);
           BindData();
       }

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值