Problem mit einer SQL-Abfrage

  • VB.NET

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von bandchef.

    Problem mit einer SQL-Abfrage

    Hi Leute,

    ich hab diese SQL-Abfrage

    VB.NET-Quellcode

    1. Set rsPM = CurrDB.OpenRecordset("SELECT * FROM PM WHERE Row = '& rowNumber &' ;", dbOpenDynaset)
    in Verbindung mit Access-VBA. Wenn ich diese Abfrage ausführen lasse und bekomme ich folgenden Fehler:

    "Laufzeitfehler '3464': Datentyp in Kriterienausdruck unverträglich."


    rowNumber ist der jeweilige Wert in der AccessDatenbank und die Zahlen in den Spalten sind als "Zahl" deklariert. Der SQL-Query müsste doch so eigentlich passen, oder?

    Das rsPM ist als DAO.RecordSet deklariert.


    Wisst ihr, was da schief läuft?



    Danke!
    rowNumber hab ich als Integer (mit %) deklariert. Und leider funktioniert dein Vorschlag auch nicht :( Ich weiß überhaupt nicht was daran falsch sein soll...



    Übrigens: DEIN code wird so nicht funzen weil die RowNumber dimensioniert, aber rowNumber benutzt... Oder begreife ich da irgendwas nicht?



    Edit: Ich glaub jetzt hab ich den Fehler gefunden. Man muss schreiben:

    VB.NET-Quellcode

    1. Set rsPMOver = CurrDB.OpenRecordset("SELECT * FROM PMOver WHERE Row = " & rowNumber & " ;", dbOpenDynaset)




    Dann funktioniert's anscheinend. Seht ihr irgendwas, warum man das so nicht machen sollte? Außer dass, DAO.RecordSet alter VB6-Kram ist. Aber dafür kann ich nix. Ich muss das so machen.



    Danke an euch!

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „bandchef“ ()