[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Dec 2000
    Beiträge
    63

    Post Datentransfer MSSQL auf AS/400

    Hallo

    Ich habe die AS/400 im MSSQL als Verbindungsserver (engl. "Linked Server") eingebunden.
    Ein SQL-Select auf die AS funktioniert auch, aber wenn ich ein insert/update machen will und die Tabelle im AS nicht journalisiert ist, kommt folgender Fehler: "[Microsoft][ODBC SQL Server Driver][SQL Server][OLE/DB provider returned message: [IBM][Client Access Express ODBC Driver (32-bit)][DB2/400 SQL]SQL7008 - TABELLE in LIBRARY für Operation ungültig.]"
    Wenn sie journaled ist, funktioniert es.

    Kann mir wer sagen, ob/wie es möglich ist, update/insert zu machen, ohne die Tabelle zu journalisieren?

  2. #2
    Registriert seit
    Jan 2001
    Beiträge
    340

    Post

    in der ODBC Verwaltung Commitment-Control ausschalten :

    Verwaltung -> Datenquellen (ODBC)

    entsprechende Datenquelle auswählen

    Notebookseite "Server"

    Commit-Modus : Sofortiges COMMIT (*NONE)

    Gruß Rolf

  3. #3
    Registriert seit
    Dec 2000
    Beiträge
    63

    Post

    Das hilft auch nicht, aber danke.
    Journaling für die Tabelle zu aktivieren scheint die einzige Möglichkeit zu sein.
    Das hilft aber auch nur für INSERT; DELETE und UPDATE werden nun mit folgendem Fehler quitiert:
    [Microsoft][ODBC SQL Server Driver][SQL Server]Tabelle '"SYSTEM"."LIBRARY"."TABELLE"' von OLE DB-Provider 'MSDASQL' konnte nicht geöffnet werden. Der Provider konnte eine Position für die Zeilensuche nicht unterstützen.

    Jemand eine idee?
    Wir haben den ODBC Treiber C/A version 8.0 im Einsatz

    Vielen Dank
    [Dieser Beitrag wurde von synus am 26. März 2002 editiert.]

    [Dieser Beitrag wurde von synus am 26. März 2002 editiert.]

  4. #4
    Registriert seit
    Dec 2000
    Beiträge
    63

    Post

    .

    [Dieser Beitrag wurde von synus am 26. März 2002 editiert.]

  5. #5
    Registriert seit
    Feb 2001
    Beiträge
    20.241

    Post

    1. Zu Commitment-Control:

    Im MSSQL dürfen die Anweisung BeginnTransaction und Commit/Rollback nicht angewandt werden, wenn keine Journalisierung aktiv ist. Die Transaction-Unterstützung für die ODBC-Quelle muss im MSSQL abgeschaltet werden.

    2. zu Update/Delete

    MSSQL arbeitet immer mit Schlüsseln. Sind keine Schlüssel definiert, erlaubt MSSQL nur SELECT und INSERT.
    Beim Einbinden der ODBC-Tabelle müssen daher Felder als Schlüssel angegeben werden.
    Achtung: Wenn der Schlüssel nicht EINDEUTIG ist lehnt MSSQL auch hier einen UPDATE / DELETE ab, wenn mehr als 1 Satz gefunden wird.

    Als Alternative können sie auch einen ODBC-Direkt-Bereich verwenden (oder SQL-Paththru). Damit wird dann MSSQL (und Transaction) abgeschaltet und alles, was die AS/400 kann, kann verwendet werden.
    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

  6. #6
    Registriert seit
    Dec 2000
    Beiträge
    63

    Post

    Danke

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">Zitat:</font><HR>Original erstellt von Fuerchau:
    Beim Einbinden der ODBC-Tabelle müssen daher Felder als Schlüssel angegeben werden.
    Achtung: Wenn der Schlüssel nicht EINDEUTIG ist lehnt MSSQL auch hier einen UPDATE / DELETE ab, wenn mehr als 1 Satz gefunden wird.[/quote]
    Wie kann ich das mit die Schlüssel beim Einbinden in den MSSQL7 bewerkstelligen?
    In der AS/400 hat die Tabelle einen eindeutigen Schlüssel, der aber MSSQL anscheinend nicht übernimmt.

    Oder wie kann ich einen ODBC-Direkt-Bereich definieren?


    [Dieser Beitrag wurde von synus am 02. April 2002 editiert.]

  7. #7
    Registriert seit
    Dec 2000
    Beiträge
    63

    Talking

    Hallo Leute

    Problem hat sich erledigt,
    Client Express V5R1 hat einen BUG
    Mit neuestem Service Pack klappt es

    Vielen Dank
    Roberto

Similar Threads

  1. Kein Zugriff von Linux auf AS/400 Freigabe?
    By schatte in forum NEWSboard Linux
    Antworten: 12
    Letzter Beitrag: 29-01-08, 14:02
  2. Datei von S/36 auf AS/400 holen
    By WeKaSys in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 06-11-06, 17:34
  3. AS/400 ruft MRxSmb Fehler auf WinXP SP2 hervor
    By sjuerges in forum IBM i Hauptforum
    Antworten: 2
    Letzter Beitrag: 17-08-06, 12:12
  4. Antworten: 2
    Letzter Beitrag: 21-05-02, 12:31
  5. PC Daten auf AS/400 sichern ???
    By muadeep in forum IBM i Hauptforum
    Antworten: 8
    Letzter Beitrag: 18-02-02, 21:15

Berechtigungen

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