none
Insertar Datos De Un GridView C# A Sql Server 2008

    Question

  • Hola tengo una consulta tengo un gridview y nose como insertar los datos.

    estos datos están siendo obtenidos de la base de datos pero por motivos

    hay que volverlos a insertar de vuelta entonces tengo un gridview el cual tiene 4 

    columnas y trae diferentes datos yo necesito extraer esos datos e insertarlos

    a una base de datos sql server 2008 esta es mi gridview

    La  tabla de mi base de dato es así :

    entonces hice un botón insertar y con un código el cual

    pensé era mas entendible hice esto pero me da error de conversion

    en piezas oviamente el primer dato decimal.

    Este Es el código Alguien Me Podría Ayudar

        protected void Button2_Click(object sender, EventArgs e)
      

     {
                string Rango = string.Empty;
                string Piezas = string.Empty;
                string Kilos = string.Empty;
                string Part = string.Empty;


                int GVCount = GridView2.Rows.Count;


                foreach (GridViewRow GVRow in GridView2.Rows)
                {
                    Rango = GVRow.Cells[1].Text;
                    Piezas = GVRow.Cells[2].Text;
                    Kilos = GVRow.Cells[3].Text;
                    Part = GVRow.Cells[4].Text;
                    break;
                }
                cnx3 = new SqlConnection(conexion3);
                cnx3.Open();

          string query = @"insert into vq_recepciondist (prday, shift, po,rango,piezas,kilos,part)
      values (@prday, @shift,@po,@rango,@piezas,@kilos,@part)";
                query3 = new SqlCommand(query, cnx3);
                query3.Parameters.AddWithValue("@prday", Convert.ToDateTime(TextBox7.Text));
                query3.Parameters.AddWithValue("@shift", dropturno.SelectedItem.Value);
                query3.Parameters.AddWithValue("@po", droplote.SelectedItem.Value);
                query3.Parameters.AddWithValue("@rango", Rango.ToString());
                query3.Parameters.AddWithValue("@piezas", Decimal.Parse(Piezas));
                query3.Parameters.AddWithValue("@kilos", Decimal.Parse(Kilos));
                query3.Parameters.AddWithValue("@part", Decimal.Parse(Part));



            }

    DESDE YA MUCHAS GRACIAS SALUDOS.

               
    Monday, March 26, 2012 5:44 PM

Answers

  • pero el codigo del INSERT esta fuera del foreach, como es que pensabas que inserte

    protected void Button2_Click(object sender, EventArgs e)
    {
    	cnx3 = new SqlConnection(conexion3);
    	cnx3.Open();
    	
    	string query = @"insert into vq_recepciondist (prday, shift, po,rango,piezas,kilos,part)
    					values (@prday, @shift,@po,@rango,@piezas,@kilos,@part)";
    	SqlCommand query3 = new SqlCommand(query, cnx3);
    	
    	foreach (GridViewRow GVRow in GridView2.Rows)
    	{
    		string Rango = GVRow.Cells[1].Text;
    		string Piezas = GVRow.Cells[2].Text;
    		string Kilos = GVRow.Cells[3].Text;
    		string Part = GVRow.Cells[4].Text;
    		
    		query3.Parameters.Clear();
    		query3.Parameters.AddWithValue("@prday", Convert.ToDateTime(TextBox7.Text));
    		query3.Parameters.AddWithValue("@shift", dropturno.SelectedItem.Value);
    		query3.Parameters.AddWithValue("@po", droplote.SelectedItem.Value);
    		query3.Parameters.AddWithValue("@rango", Rango.ToString());
    		query3.Parameters.AddWithValue("@piezas", Decimal.Parse(Piezas));
    		query3.Parameters.AddWithValue("@kilos", Decimal.Parse(Kilos));
    		query3.Parameters.AddWithValue("@part", Decimal.Parse(Part));
    		
    		query3.ExecuteNonQuery();
    
    	}
    
    	cnx3.Close();
    }

    deberia ser algo como el codigo que pongo aqui

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    Monday, March 26, 2012 6:03 PM