Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Insertion de données d'un DataGridView dans une base de données

Vous ne pouvez pas mapper les colonnes aux données . Ce que vous devez ajouter, ce sont les données de cellule de ligne de cet index de colonne

C'est faux grdFamily.Columns(0)

L'affectation des paramètres dans la boucle for doit être corrigée comme suit

REMARQUE Veuillez modifier le type de données en fonction de votre tableau.

adapFam.InsertCommand.Parameters.Add("@ID", SqlDbType.Int)
adapFam.InsertCommand.Parameters.Add("@Name", SqlDbType.VarChar)
adapFam.InsertCommand.Parameters.Add("@Age", SqlDbType.VarChar)
adapFam.InsertCommand.Parameters.Add("@Rel", SqlDbType.VarChar)
adapFam.InsertCommand.Parameters.Add("@Occ", SqlDbType.VarChar)

For i As Integer = 0 To grdFamily.Rows.Count - 1
  adapFam.InsertCommand.Parameters[0].Value = Convert.ToInt32(txtEmpID.Text.Trim)
  adapFam.InsertCommand.Parameters[1].Value = grdFamily.Rows[i].Cells[0].Value
  adapFam.InsertCommand.Parameters[2].Value = grdFamily.Rows[i].Cells[1].Value
  adapFam.InsertCommand.Parameters[3].Value = grdFamily.Rows[i].Cells[2].Value
  adapFam.InsertCommand.Parameters[4].Value = grdFamily.Rows[i].Cells[3].Value

    result2 = adapFam.InsertCommand.ExecuteNonQuery()
Next