Which one would be better to execute the insert statement for the ms-sql database:
Sql DataAdapter or SQL Command Object?
Which one would be better, and inserting only one row and while inserting multiple rows ?
A simple code usage example:
SQL command
string query = "insert into Table1(col1,col2,col3) values (@value1,@value2,@value3)"; int i; SqlCommand cmd = new SqlCommand(query, connection); // add parameters... cmd.Parameters.Add("@value1",SqlDbType.VarChar).Value=txtBox1.Text; cmd.Parameters.Add("@value2",SqlDbType.VarChar).Value=txtBox2.Text; cmd.Parameters.Add("@value3",SqlDbType.VarChar).Value=txtBox3.Text; cmd.con.open(); i = cmd.ExecuteNonQuery(); cmd.con.close();
SQL Data Adapter
DataRow dr = dsTab.Tables["Table1"].NewRow(); DataSet dsTab = new DataSet("Table1"); SqlDataAdapter adp = new SqlDataAdapter("Select * from Table1", connection); adp.Fill(dsTab, "Table1"); dr["col1"] = txtBox1.Text; dr["col2"] = txtBox5.Text; dr["col3"] = "text"; dsTab.Tables["Table1"].Rows.Add(dr); SqlCommandBuilder projectBuilder = new SqlCommandBuilder(adp); DataSet newSet = dsTab.GetChanges(DataRowState.Added); adp.Update(newSet, "Table1");
source share