[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jul 2010
    Beiträge
    5

    Daten via ODBC in Access ohne DSN

    Hallo zusammen,

    ich versuche mittels VBA, Daten aus einer AS400 Tabelle zu selektieren und das Ergebnis in eine Access Tabelle zu kopieren. Dabei möchte ich unbedingt auf DSNs verzichten, weil ich keine DSN Installation durchführen möchte und obendrein der User überhaupt keinen Zugriff auf die AS400 Tabelle hat, das Passwort im VBA Code ist dem User unbekannt (und durch Access Mittel geschützt).

    Der vielversprechendste Ansatz von sehr, sehr vielen war dieser:

    DoCmd.RunSQL "SELECT * INTO AccessTable FROM [ODBC;Driver=iSeries Access ODBC Driver;SYSTEM=as400ip;DBQ=as400lib;UID=user;PWD=pw d;CMT=0;SEARCHPATTERN=0;PREFETCH=1].as400table"

    Wie bei allen meinen Versuchen bekam ich den Fehler (-7778) zurück.

    Und jetzt weiss ich wirklich nicht mehr, was ich noch tun soll.

    ratlos
    frank

  2. #2
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    In VBA musst du dir die MSADO-Objekte als Verweise hinzufügen.
    Dann kannst du mit Connection-, Command- und Recordset-Objecten die Daten lesen und in deine Tabellen schreiben.

    Aber DSN's benötigst du nur zur Entwicklungszeit.
    Wenn du eine Verknüpfungstabelle erstellst zieht sich Access automatisch die Verbindungsfolge in die Eigenschaften der Tabelle.

    Du kannst dann ganz normale Anfügeabfragen erstellen und verwenden.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  3. #3
    Registriert seit
    Jul 2010
    Beiträge
    5
    Hi,

    erstmal danke für die schnelle Antwort!
    Ich habe mich ein bisschen in der MS Syntax verheddert, ich meinte nicht standalone VBA sondern Code innerhalb eines Access Moduls.

    Was ich hier völlig problemlos hinbekomme, ist ein Recordset ohne DSN mit den benötigten Daten zu füllen und dann in einer Schleife für jeden einzelnen Satz ein AddNew in die Access Tabelle zu machen. Aber das dauert eeeeeewig!

    Wenn ich aber z.B. das hier nutze:
    DoCmd.RunSQL "SELECT * INTO AccessTable FROM [ODBC;DSN=as400dsn].as400lib.as400table"

    sind die Sätze innerhalb von Sekunden drinne. Aber wie gesagt, DSN will ich ja gerade nicht...

    leider immer noch ratlos
    frank

  4. #4
    Registriert seit
    Feb 2001
    Beiträge
    20.695
    Schau dir die Syntax des Connection-Strings genauer an:

    Driver={DriverName};System=MySys;DBQ=MyLib;CMT=0; User=MyUser;Password=MyPass;

    Wenn du eine Tabelle verknüpfst, kannst du dir die Verbindungsfolge in den Tabelleneigneschafte ansehen.
    Dienstleistungen? Die gibt es hier: http://www.fuerchau.de
    Das Excel-AddIn: https://www.ftsolutions.de/index.php/downloads
    BI? Da war doch noch was: http://www.ftsolutions.de

  5. #5
    Registriert seit
    Jul 2010
    Beiträge
    5
    Himmel, ich habs:

    Es fehlte der Parameter MGDSN=0!
    Das funktioniert jetzt einwandfrei:

    DoCmd.RunSQL "SELECT * INTO AccessTable FROM [ODBC;Driver={iSeries Access ODBC Driver}; SYSTEM=as400ip; DBQ=as400lib; UID=user; PWD=pwd; MGDSN=0].as400table"

    Das hat Nerven gekostet...


    merci vielmals
    frank

Similar Threads

  1. ACCESS mit Unterformularen per ODBC
    By Armin in forum IBM i Hauptforum
    Antworten: 4
    Letzter Beitrag: 07-09-06, 11:18
  2. Update via ODBC
    By mdhl in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 18-05-06, 13:27
  3. Geschwindigkeit beim Datentransfer via ODBC in MS ACCESS
    By mdhl in forum NEWSboard Server Software
    Antworten: 5
    Letzter Beitrag: 11-07-05, 09:18
  4. MS Access Zugriff via ODBC auf iSeries Tabellen
    By Rico in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 21-03-05, 09:43
  5. Zugriff MS Access auf AS/400 via ODBC
    By SL in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 22-07-02, 11:54

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •