单击按钮时在表中插入多行

本文关键字:插入 按钮 单击 | 更新日期: 2023-09-27 18:06:28

这段代码工作得很好,但它的插入值只从textbox1 textbox2和Date2如果我有更多的文本框和标签如何插入多行从不同的控件在一次单击。

确切地说,我有10对文本框文本框1和文本框2然后文本框3和文本框4和10标签日期2/4/6/8

所以在每一行我想从文本框[i]文本框[i+1]日期[i+1]和全局变量buyEUR的值

private void InsertData_Click(object sender, EventArgs e)
{
    SqlCeConnection connection = new SqlCeConnection(@"Data Source=C:'Users'FluksikartoN'Documents'Visual Studio 2012'Projects'BuroFoki'BuroFoki'MainDB.sdf");
    connection.Open();
    using (SqlCeCommand com = new SqlCeCommand("INSERT INTO TenOperations (EUR, Rate, BGN, Date) Values(@EUR, @Rate, @BGN, @Date)", connection))
    {
       /* for (int i = 2; i <= 20; i = i+2)
       {
          TextBox txtBox1 = this.Controls["TextBox" + (i - 1).ToString()] as TextBox;
          TextBox txtBox2 = this.Controls["TextBox" + i.ToString()] as TextBox;
          Label Date = this.Controls["Date" + i.ToString()] as Label;*/
          com.Parameters.AddWithValue("@EUR", textBox2.Text.ToString());
          com.Parameters.AddWithValue("@Rate", EURbuy);
          com.Parameters.AddWithValue("@BGN", textBox1.Text.ToString());
          com.Parameters.AddWithValue("@Date", Date2.Text.ToString());
          /*
          com.Parameters.AddWithValue("@EUR", textBox4.Text.ToString());
          com.Parameters.AddWithValue("@Rate", EURbuy);
          com.Parameters.AddWithValue("@BGN", textBox3.Text.ToString());
          com.Parameters.AddWithValue("@Date", Date4.Text.ToString());
          */
          com.ExecuteNonQuery();
       }
       connection.Close();
     }

单击按钮时在表中插入多行

你可以创建一个控制数组,看到这里(虽然没有固有的支持,你可以复制的功能),然后你可以得到的值添加作为参数使用循环和插入值在数据库

试一下是否可以。

using (SqlCeCommand com = new SqlCeCommand("INSERT INTO TenOperations (EUR, Rate, BGN, Date) Values(@EUR1, @Rate1, @BGN1, @Date1),(@EUR2, @Rate2, @BGN2, @Date2)", connection))
     {
        com.Parameters.AddWithValue("@EUR1", textBox2.Text.ToString());
        com.Parameters.AddWithValue("@Rate1", EURbuy);
        com.Parameters.AddWithValue("@BGN1", textBox1.Text.ToString());
        com.Parameters.AddWithValue("@Date1", Date2.Text.ToString());
        com.Parameters.AddWithValue("@EUR2", textBox4.Text.ToString());
        com.Parameters.AddWithValue("@Rate2", EURbuy);
        com.Parameters.AddWithValue("@BGN2", textBox3.Text.ToString());
        com.Parameters.AddWithValue("@Date2", Date4.Text.ToString());
        com.ExecuteNonQuery();
     }