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