我正在尝试将多个文本框值保存到数据库中。我的表格如下
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);
答案 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());