将多个文本框值保存到数据库

时间:2012-08-31 16:51:55

标签: asp.net

我正在尝试将多个文本框值保存到数据库中。我的表格如下

textbox1 texbox 2 ----数据库中的第1行

textbox3 textbox 4 ------数据库中的第2行

编辑:我应该澄清文本框1和texbox 3在同一列中并使用相同的param1

我一直在使用

之前保存单个值
 cnn.Open();
    SqlTransaction tran = cnn.BeginTransaction();
    cmd.Connection = cnn;
    cmd.Transaction = tran;
    cmd.CommandText = "stored procedure";
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Connection = cnn;
    SqlParameter p1 = new SqlParameter("@param1", SqlDbType.Int);
    SqlParameter p2 = new SqlParameter("@param2", SqlDbType.Int);
    cmd.Parameters.Add(p1);
    cmd.Parameters.Add(p2);

2 个答案:

答案 0 :(得分:1)

如果我理解正确,请尝试

SqlTransaction tran = cnn.BeginTransaction();
cmd.Connection = cnn;
cmd.Transaction = tran;
cmd.CommandText = "stored procedure";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Connection = cnn;
for( int i = 0; i < 2; i++ )
{
    SqlParameter p1 = new SqlParameter("@param1", SqlDbType.Int);
    SqlParameter p2 = new SqlParameter("@param2", SqlDbType.Int);
    if( i == 0 )
    {
       p1.Value = Convert.ToInt32(textBox1.Text.Trim());     // row 1 in database
       p2.Value = Convert.ToInt32(textBox2.Text.Trim());    // row 1 in database
    }
    else
    {
       p1.Value = Convert.ToInt32(textBox3.Text.Trim());     // row 2 in database
       p2.Value = Convert.ToInt32(textBox4.Text.Trim());   // row 2 in database
    }
    cmd.Parameters.Add(p1);
    cmd.Parameters.Add(p2);

    cmd.ExecuteNonQuery(); // Execute the query
}

答案 1 :(得分:0)

您可以尝试使用此代码

SqlParameter p1 = new SqlParameter("@param1", SqlDbType.Int);
 p1.Value = Convert.ToInt32(textBox1.Text.Trim());
 SqlParameter p2 = new SqlParameter("@param2", SqlDbType.Int);
 p2.Value = Convert.ToInt32(textBox2.Text.Trim());