Bonjour à tous,
j'ai quelques problèmes lorsque j'essaye de faire des changements dans une table Access, j'ai l'infame erreur "Violation de l'accès concurrentiel"
J'ai besoin de verifier quelques donnés dans la table et ensuite faire quelques changements.
Voilà mon code:
L'erreur se produit lors de l'actualisation
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48 strSQL = "SELECT T_contrats.* " & _ "FROM T_contrats " & _ "WHERE T_contrats.Mec='" & Me.lblCollaborateurMec.Text & "' " & _ "ORDER BY T_contrats.Debut DESC" ObjetConnection = New OleDbConnection() ObjetConnection.ConnectionString = CollaborateursConn ObjetConnection.Open() ObjetCommand = New OleDbCommand(strSQL) ObjetDataAdapter = New OleDbDataAdapter(ObjetCommand) ObjetCommand.Connection() = ObjetConnection ObjetDataAdapter.Fill(ObjetDataSet, "T_contrats") ObjetDataTable = ObjetDataSet.Tables("T_contrats") Dim No As String = ObjetDataTable.Rows(0).Item("No") Dim contrat As String = ObjetDataTable.Rows(0).Item("Contrat") Dim heures As String = ObjetDataTable.Rows(0).Item("Heures").ToString Dim categorie As String = ObjetDataTable.Rows(0).Item("Categorie") ObjetDataSet.Clear() ObjetConnection = Nothing ObjetCommand = Nothing ObjetDataAdapter = Nothing Dim change As Boolean = False If Me.cbContrat.Text <> contrat OrElse Me.txtTempsTravail.Text <> heures OrElse Me.txtCategorie.Text <> categorie Then strSQL = "SELECT T_contrats.* " & _ "FROM T_contrats " & _ "WHERE T_contrats.No=" & No ObjetConnection = New OleDbConnection() ObjetConnection.ConnectionString = CollaborateursConn ObjetConnection.Open() ObjetCommand = New OleDbCommand(strSQL) ObjetDataAdapter = New OleDbDataAdapter(ObjetCommand) ObjetCommand.Connection() = ObjetConnection ObjetDataAdapter.Fill(ObjetDataSet, "T_contrats") ObjetDataTable = ObjetDataSet.Tables("T_contrats") MsgBox(ObjetDataSet.Tables("T_contrats").Rows.Count) ObjetDataRow = ObjetDataSet.Tables("T_contrats").Rows(0) ObjetDataRow("Fin") = Date.Today ObjetCommandBuilder = New OleDbCommandBuilder(ObjetDataAdapter) ObjetDataAdapter.Update(ObjetDataSet, "T_contrats") ObjetDataSet.Clear() ObjetDataAdapter.Fill(ObjetDataSet, "T_contrats") ObjetDataTable = ObjetDataSet.Tables("T_contrats") ObjetConnection = Nothing ObjetCommand = Nothing ObjetDataAdapter = Nothing change = True Else change = False End If
J'ai cherché par tout, mais je n'arrive pas à trouver le problème...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 ObjetDataRow("Fin") = Date.Today ObjetCommandBuilder = New OleDbCommandBuilder(ObjetDataAdapter) ObjetDataAdapter.Update(ObjetDataSet, "T_contrats")
Est-ce que quelqu'un pourrait m'aider,
je remercie en avance
Partager