Probleme de connexion Bdd Access
Bonjour,
Pour faire très original j'ai un pb de communication avec mon programme et ma base access.
Tout d'abord, le programme. Je cherche à connaitre l'utilisation de machine dans une salle libre service (dans une école). Il y une vingtaine de machine et je voudrais pouvoir faire des stats sur leur utilisation journalière dans le mois etc.
Bref, j'ai imaginer un petit programme qui se lancerai en tache de fond à l'ouverture d'une session, qui mettrai l'heure et la date dans une variable et enverrais tout cela sur un espace disque à la fermeture de la dite session avec en plus l'heure et la date de fermeture de session. tout cela avec le nom de machine.
Rien de bien sorcier (remarque je ne sais pas si c'est très clair...)
pour palier à un manque de réseau (et oui les étudiants sont une espèce brutal pour les câbles réseau situer à leur pied...:aie:) je teste la connexion avec la base de donnée distante. Si elle n'est pas la je créer une base local et je stocke tout dedans. A l'ouverture suivante d'une session je re-test et si la base distante est présente je décharge la base local dans celle distante et je la supprime.
Bref tout cela pour dire que j'arrive à créer ma base de donnée local mais je n'arrive pas remplir celle distante avec celle local.
Code:
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 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92
| Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim cnx As OleDbConnection
Dim cmd As OleDbCommand
Dim dta As OleDbDataAdapter
'Dim cmdb As OleDbCommandBuilder
Dim dts As New DataSet
Dim dtt As DataTable
'Dim dtr As DataRow
Dim conn As String
Dim sql As String
Dim cnx_2 As OleDbConnection
Dim cmd_2 As OleDbCommand
Dim dta_2 As OleDbDataAdapter
Dim cmdb_2 As OleDbCommandBuilder
Dim dts_2 As New DataSet
Dim dtt_2 As DataTable
Dim dtr_2 As DataRow
Dim conn_2 As String
Dim sql_2 As String
Me.Opacity = 0
Me.ShowInTaskbar = False
If Len(Dir("C:\util\Data.mdb", FileAttribute.Normal)) <> 0 Then
'If Len(Dir("O:\espas\Data\Data.mdb", FileAttribute.Normal)) <> 0 Then
If Len(Dir("C:\util\test\Data.mdb", FileAttribute.Normal)) <> 0 Then
sql = "SELECT * FROM UTILISATION_111)"
conn = "Provider = Microsoft.Jet.OLEDB.4.0 ; Data Source = C:\util\Data.mdb ; Jet OLEDB:Database Password = admin"
cnx = New OleDbConnection
cnx.ConnectionString = conn
cnx.Open()
cmd = New OleDbCommand(sql)
dta = New OleDbDataAdapter(cmd)
cmd.Connection() = cnx
dts.Clear()
dta.Fill(dts, "UTILISATION_111")
dtt = dts.Tables("UTILISATION_111")
If dtt.Rows.Count <> 0 Then
sql_2 = "SELECT * FROM 'UTILISATION_111')"
conn_2 = "provider = microsoft.jet.oledb.4.0 ; data source = O:\espas\Data\Data.mdb ; Jet OLEDB:Database Password = admin"
cnx_2 = New OleDbConnection
cnx_2.ConnectionString = conn
cnx_2.Open()
cmd_2 = New OleDbCommand(sql)
dta_2 = New OleDbDataAdapter(cmd)
cmd_2.Connection() = cnx
dts_2.Clear()
dta_2.Fill(dts_2, "UTILISATION_111")
dtt_2 = dts_2.Tables("UTILISATION_111")
cnx_2.Close()
For i = 0 To dtt.Rows.Count
dtr_2 = dts.Tables("UTILISATION_111").NewRow
dtr_2("Nom_machine") = dtt.Rows(i).Item("Nom_machine")
dtr_2("Date_log") = dtt.Rows(i).Item("Date_log")
dtr_2("Date_delog") = dtt.Rows(i).Item("Date_delog")
dts_2.Tables("UTILISATION_111").Rows.Add(dtr_2)
Next
conn_2 = "provider = microsoft.jet.oledb.4.0 ; data source = C:\util\Data.mdb ; Jet OLEDB:Database Password = admin"
cnx_2 = New OleDbConnection
cnx_2.ConnectionString = conn
cnx_2.Open()
cmdb_2 = New OleDbCommandBuilder(dta_2)
dta_2.Update(dts_2, "UTILISATION_111")
dts_2.Clear()
dta_2.Fill(dts_2, "UTILISATION_111")
dtt_2 = dts_2.Tables("UTILISATION_111")
cnx_2.Close()
End If
End If
Else
create_mdb()
End If
date_log = Today
End Sub |
Lorsque je lance le programme celui-ci bloque sur
dta.Fill(dts, "UTILISATION_111")en disant
Citation:
Erreur de syntaxe dans la clause FROM.
Je veut bien mais je ne vois pas trop au est l'erreur.:cry:
Je me demander si des rois du VB pouvais bien me filer un coup de main sur ce coup la
Merci d'avance
PS: Désolé pour les fotes :oops: