none
CreateQueryDef in VB2010? / Abfrage in Datenbank per VB2010-Programm erstellen und als Abfrage in DB speichern für Aufruf in externem Fontend RRS feed

  • Frage

  • Hallo zusammen,

    ich lese Daten aus einer Datenbank aus und will für ein externes Fontend verschiedene Abfragen erstellen und dann als Abfragen mit festgelegten Namen in der Datenbank selbst speichern. VB6 konnte ich das mit DAO erschlagen:

    VB6 - Code:
    DIM db As database
    DIM q As QueryDef
    ...
    Set db = OpenDatabase(dbName)
    Set q = db.CreateQueryDef(query, sql)

    ....

    Wie kann ich die Funktionalität in VB2010 programmieren?

    Gruß

    Freitag, 15. April 2011 08:07

Antworten

  • Hallo,

    wenn Du ausschließlich für Access Datenbanken Abfragen erzeugen willst, so wäre DAO und CreateQueryDef
    weiterhin die beste Möglichkeit. Den zwischenzeitlichen Exkurs über ADOX hat Microsoft soweit es Access angeht,
    mehr oder weniger aufgegeben.

    Du kannst DAO als Verweis über den COM Reiter hinzufügen als Microsoft DAO 3.6 Object Engine hinzufügen.
    Wobei das die "alte" DAO 3.6 aus der Jet Engine 4.0 ist und diese nur für 32-Bit existiert.
    Dein Programm muss als 32-Bit-Anwendung als "x86" kompiliert werden, siehe
    Gewusst wie: Optimieren einer Anwendung für einen bestimmten CPU-Typ

    Über das Microsoft Access Database Engine 2010 Redistributable  erhälst Du eine aktuellere Version,
    die für die Office 2007/2010 Formate nutzbar ist und auch für 64-Bit verfügbar ist  - wobei man sich für eine
    der beiden Versionen entscheiden muss.
    Hast Du die ACE Installiert, müsstet Du die Microsoft Office 14.0 Database Engine Object Engine als Verweis hinzufügen.

    Die Schnittstellen sind in beiden Fällen vergleichbar, so dass Du Deinen VB6 Code übernehmen kannst.

    Gruß Elmar

    Freitag, 15. April 2011 09:52
    Beantworter

Alle Antworten