Here I have this code:

using (SqlConnection con = new SqlConnection(_conect)) { con.Open(); string sql = "INSERT INTO C#Table VALUES(@param1 ,@param2 ,@param3 ,@param4 ,@param5 ,@param6 ,@param7)"; SqlCommand cmd = new SqlCommand(sql, con); cmd.Parameters.Add("@param1", SqlDbType.Date).Value = "01-02-2015"; cmd.Parameters.Add("@param2", SqlDbType.NVarChar, 50).Value = "фывфыв"; cmd.Parameters.Add("@param3", SqlDbType.NVarChar, 50).Value = "фывфыфывыфвв"; cmd.Parameters.Add("@param4", SqlDbType.NVarChar, 50).Value = "фыпа"; cmd.Parameters.Add("@param5", SqlDbType.NVarChar, 50).Value = "фпавп"; cmd.Parameters.Add("@param6", SqlDbType.Decimal, 13).Value = 23525.533; cmd.Parameters["@param6"].Precision = 13; cmd.Parameters["@param6"].Scale = 2; cmd.Parameters.Add("@param7", SqlDbType.Decimal, 13).Value = 23535.35235; cmd.Parameters["@param7"].Precision = 13; cmd.Parameters["@param7"].Scale = 2; cmd.Prepare(); cmd.ExecuteNonQuery(); con.Close(); } 

If I want to add several lines at once, how to do it? What will have to add a line and do something like:

 string sql = "INSERT INTO C#Table VALUES(@param1 ,@param2 ,@param3 ,@param4 ,@param5 ,@param6 ,@param7), (@param8 ,@param9 ,@param10 ,@param11 ,@param12 ,@param13 ,@param14)"; 

    1 answer 1

    To add several lines, you can put in a separate method and call in a loop, or if you know how many lines you need to add, then

     INSERT INTO tbl_name (a,b,c) VALUES (1,2,3), (4,5,6), (7,8,9); 

    An example of calling a separate method:

      public void Data() { foreach(Parameter par in pars) { InsertRow(par); } } public void InsertRow(входящие данные) { using (SqlConnection con = new SqlConnection(_conect)) { // Код добавления } }