Reputation: 135
I'm trying to save multiple textbox values to database into multiple rows. My form is as follows
textbox1 texbox 2 ---- row 1 in database
textbox3 textbox 4 ------row 2 in database
edit: I should clarify that textbox 1 and texbox 3 are in the same column and using the same param1
Ive been to save single values before using
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);
Upvotes: 1
Views: 1684
Reputation: 6123
If I understand properly, try it
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
}
Upvotes: 1
Reputation: 28970
you can try with this code
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());
Upvotes: 0