Public Sub Connect()
'Repertoire = "P:\SCAN\Cadastre"
Repertoire = Application.StartupPath
'Dim SourceConnect As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Repertoire & "\Plan_Cadastre.mdb"
Dim SourceConnect As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Repertoire & "\BD.mdb"
SourceOle = New OleDbConnection(SourceConnect)
Select Case SourceOle.State
Case ConnectionState.Closed
SourceOle.Open()
End Select
End Sub
Public Sub Deconnect()
Select Case SourceOle.State
Case ConnectionState.Open
SourceOle.Close()
SourceOle.Dispose()
SourceOle = Nothing
End Select
End Sub
Public Function Execute(ByVal table As String) As DataView
Connect()
DataA = New OleDbDataAdapter(RequeteSQL, SourceOle)
Dim DataS As New DataSet
DataA.Fill(DataS, table)
Dtt = DataS.Tables(table)
Try 'la suite n'est pas obligatoire
Return DataS.Tables(table).DefaultView 'on demande au dataset de renvoyer la reponse de la requetesql sous forme de datagridview
Catch ex As Exception
Return Nothing
Finally
Deconnect()
End Try
End Function
Mon bug se produit lorsque j'arrive sur cette ligne DataA.Fill(DataS, table) (DataAdapter) ca m'indique que ma requête comporte un problème
Erreur de syntaxe dans l'instruction UPDATE.
Qu'est ce que je ne fais pas de correct dans ma requête ?
merci de votre aide
A voir également:
Sql server concaténer plusieurs lignes dans un seul champ
Calade
Messages postés1207Date d'inscriptiondimanche 20 avril 2003StatutMembreDernière intervention 4 juin 201610 12 nov. 2009 à 15:08
Bonjour,
Essaie comme ceci:
RequeteSQL "UPDATE BD SET Final " & DataGridView1.CurrentRow.Cells(0).Value +
DataGridView1.CurrentRow.Cells(1).Value +
DataGridView1.CurrentRow.Cells(2).Value +
DataGridView1.CurrentRow.Cells(3).Value
C'est à dire en virant les quotes qui signifient que le tout est un libellé. De plus il est sous-entendu que tes 4 colonnes sont bien du même type, sinon il faudra les CASTer.
cs_JeffC1977
Messages postés928Date d'inscriptionvendredi 10 novembre 2000StatutMembreDernière intervention23 septembre 20234 12 nov. 2009 à 15:48
Rebonjour
J'aurais une autre question...
Je veux faire une boucle pour faire l'ensemble de la BD
j'utilise ce code mais ca ne fonctionne pas car il reste figé sur la premiere ligne du Datagrid
Dim i As Integer
For i = 1 To NB
RequeteSQL "UPDATE BD SET Final " & DataGridView1.CurrentRow.Cells(0).Value + DataGridView1.CurrentRow.Cells(1).Value + DataGridView1.CurrentRow.Cells(2).Value + DataGridView1.CurrentRow.Cells(3).Value & " WHERE Cle = " & i
Execute("BD")
Next i
Ma colonne Final à la même valeur pour chaque ligne et vaut la valuer de la ligne 0 du datagrid ??
Bref comment changer le CurrentRow de DataGridView1.CurrentRow.Cells(2).Value afin qu'il puisse faire chaque ligne du DataGridView