Snap er niks meer van.....

Status
Niet open voor verdere reacties.

djpaul

Nieuwe gebruiker
Lid geworden
26 mei 2008
Berichten
3
Hoi,
Ik ben een progje aan het maken om foto's te kunnne tracen op je pc.
Me buurman heef t100-en foto's van vroeger en hij wou ze makkelijk op kunnen zoeken. vandaar.
Maar ik krijg telkens met het inserten van de mdb database een foutmelding:Syntax error in query. Incomplete query clause.

Heb vanalles geprobeerd maar helaas.
Wie o wie kan mij een hintje geven??

Code:
 Dim myOleDbConnection As OleDb.OleDbConnection
        Dim myOleDbCommand As OleDb.OleDbCommand
        Dim myConnectionString As String
        Dim FileText As String

        myConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=I:\MY DOCUMENTS\Visual Studio 2005\Projects\FotoAlbum\fotoalbum.mdb;User ID=Admin;Password=;"
        Dim Count As Integer
        For Count = 0 To PhotoName.Count - 1

            'Check if the text has to be the same like the filename or else put in a empty string
            If CheckBox.Checked = True Then
                FileText = FileName(Count)
            ElseIf (CheckBox.Checked = False) Then
                FileText = ""
            End If

            Try
                Dim Query As String = "INSERT INTO 'foto' ('fotonaam', 'fotomap', 'datum', 'bestandsnaam', 'text') VALUES ('" & PhotoName(Count) & "', '" & FilePath(Count) & "', '" & CreateDate(Count) & "', '" & FileExtension(Count) & "', '" & FileText & "')"

                myOleDbConnection = New OleDb.OleDbConnection(myConnectionString)
                myOleDbCommand = myOleDbConnection.CreateCommand
                myOleDbCommand.CommandType = CommandType.Text
                myOleDbCommand.CommandText = Query

                'Open connection
                myOleDbConnection.Open()

                'Run the query
                Dim Rows As String = myOleDbCommand.ExecuteNonQuery()

                MsgBox(Rows & " foto's opgeslagen.")

                myOleDbConnection.Dispose()

                'Close connection
                myOleDbConnection.Close()

            Catch MyError As Exception

                MsgBox("Er is een fout opgetreden:" & vbCrLf & MyError.Message)

            End Try

        Next
 
Laatst bewerkt:
Code:
 Dim Query As String = "INSERT INTO foto (fotonaam, fotomap, datum, bestandsnaam, text) VALUES ('" & PhotoName(Count) & "', '" & FilePath(Count) & "', '" & CreateDate(Count) & "', '" & FileExtension(Count) & "', '" & FileText & "')"

Zie

http://nl.wikipedia.org/wiki/Insert_(SQL)

Succes
 
Helaas, met jouw oplossing krijg ik : Syntax error in INSERT INTO statement.

Tis allemaal vreemd....
Normaal doe ik dat ook met php en mysql en werkt altijd, maar nu???

Iemand andere ideeen?
 
Je kan in access zelf via de query builder je query testen. Vervang de dynamische velden even door iets wat in de database staat.

En zijn al je values strings? of zijn er ook integers bij?

In het laatste geval krijg je dan iets als

Code:
, '" & String & "', " & int & ", '"
 
Laatst bewerkt:
Haha, weet je wat het was, ik had een veld 'text' genoemd en daar viel ie over.
Heb hem hernoemd naar textveld en toen deed ie ut.
Fijn, maar dan weten jullie het ook!

Bedankt!

Paul
 
Laatst bewerkt:
Haha, weet je wat het was, ik had een veld 'tekst' genoemd en daar viel ie over.
Heb hem hernoemd naar textveld en toen deed ie ut.
Fijn, maar dan weten jullie het ook!

Bedankt!

Paul

Mooi dat het nu werkt!

Kan je de vraag nog op opgelost zetten aub?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan