Bonjour,
J'ai crée une connexion de datagridview qui a comme nom dans mon code "Dg" avec ma base donné SQL "ETS-MTIRI-BASE".et j'ai crée un bouton "button1" qui permet d'insérer une ligne dans la base que je la saisie dans le datagridview apres le débogage. quand je fait l'execution les lignes de la base déja inseré s'affiche correctement mais si j'ajoute une ligne et je clique sur le bouton j'ai le message suivant:
La génération SQL dynamique de UpdateCommand n'est pas prise en charge pour un SelectCommand qui ne retourne pas des informations de colonne clé.
Et il me sélectionne en jaune la ligne du code da.UpdateCommand = cmb.GetUpdateCommand qui est dans la Private Sub Button1_Click.

Voici mon code source :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Imports System.Data.SqlClient
 
Public Class Form1
Private cs As New SqlConnection("Data Source=MTIRI-PC; Initial Catalog=ETS-MTIRI-BASE;integrated security=true; ")
Private da As New SqlDataAdapter("select * from FTVA", cs)
Private ds As New DataSet
Private cmb As New SqlCommandBuilder(da)
 
 
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Try
da.Fill(ds, "FTVA")
Dg.DataSource = ds.Tables("FTVA")
Catch ex As Exception
End Try
End Sub
 
 
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, btnUpdate.Click
Dim x As Integer
da.UpdateCommand = cmb.GetUpdateCommand
da.Update(ds.Tables("FTVA"))
MsgBox(x & "ligne a jour")
End Sub
 
End Class
Merci de m'aider