[NEWSboard IBMi Forum]
  1. #1
    Registriert seit
    Jun 2006
    Beiträge
    348

    Question Name/Bibliothek des SQL Packages nachträglich ohne Kompilierung ändern?

    Hallo zusammen,

    beim Kompilieren eines Embedded SQL Programms mit dem Befehl CRTSQLxxx kann man im Parameter SQLPKG den Namen und die Bibliothek des SQL Packages festlegen.

    Sobald das Programm aufgerufen wird und es sich per CONNECT TO oder per "3-part RDB name" auf eine andere AS/400 verbindet, wird dort das SQL Package mit dem Namen und der Bibliothek laut CRTSQLxxx angelegt, falls es noch nicht existiert oder es einen anderen Konstenstoken enthält.

    Nun möchte ich das betroffene Embedded SQL Programm auf der gleichen Maschine in eine andere Bibliothek duplizieren. Bisher hierhin funktioniert das Ausführen beider Programme ohne Probleme.
    Wenn ich nun jedoch das Programm aus der ursprünglichen Bibliothek erneut kompiliere und ausführe, wird das vorhandene SQL Package auf der Ziel-AS/400 neu erstellt, da sich ja der Konstens-Token durch die erneute Kompilierung geändert hat.
    Eine gleichzeitige Ausführung beider Programme ist nun nicht mehr möglich, aufgrund des geänderten Tokens.

    Um dieses Problem zu umgehen, muss ich das duplizierte Programm ebenfalls neu kompilieren, allerdings mit Angabe einer anderen Bibliothek oder Namen im Parameter SQLPKG des Befehls CRTSQLxxx.
    Nun möchte ich jedoch den Namen/Bibliothek des SQL Packages ändern, ohne das Programm neu zu kompilieren. Weil ich z.B. die Source nicht habe.

    Bisher habe ich vergeblich nach einem entsprechenden CHG-CL Befehl oder API gesucht, um den Package Name/Bibliothek zu ändern.

    Hat jemand hierzu eine Idee? Oder kann ich tatsächlich nur das SQLPKG Ziel ändern, indem ich das zugehörige Programm mit CRTSQLxxx neu erstelle?

    Viele Grüße
    Matthias
    Last edited by schatte; 05-12-17 at 17:55. Grund: Codepagefehler korrigiert

  2. #2
    Registriert seit
    Mar 2002
    Beiträge
    5.286
    ... für CRTSQLPKG brauchst Du keine Quelle.

    D*B
    AS400 Freeware
    http://www.bender-dv.de
    Mit embedded SQL in RPG auf Datenbanken von ADABAS bis XBASE zugreifen
    http://sourceforge.net/projects/appserver4rpg/

  3. #3
    Registriert seit
    Feb 2001
    Beiträge
    20.207
    Das Problem ist jedoch, wenn die SQLPKG-Bibliothek im Programm fest vorgegeben ist. Dann hilft auch die manuelle Erstellung nicht, da auf dem Ziel nicht nach *LIBL gesucht wird.
    Das Problem ist, dass die Lib des Paketes bei der Erstellung des Moduls festgelegt ist.

    Man kann also nur die neue Version in eine neue Lib erstellen, so dass das Paket ebenso auf die neue Lib verweist. Das alte Programm läuft dann mit der alten Lib.
    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

  4. #4
    Registriert seit
    Jun 2006
    Beiträge
    348
    Also muss für die Änderung immer neu Kompiliert werden.
    Alternativ müsste ich das ganze auf SQLCLI umstellen. Da werden ja anscheinend keine SQL Packages benötigt. Aber solch eine Umstellung ist natürlich ganz grundlegend und nicht so einfach umzusetzen.

    Vielleicht erweitert die IBM irgendwann mal das API QBNCHGPD, womit man dann nachträglich das Ziel des SQL Packages in einem bestehenden Embedded SQL Programmobjekt ändern kann.

Similar Threads

  1. Antworten: 10
    Letzter Beitrag: 28-06-17, 10:18
  2. DSPDBR zeigt abhängige Joinfiles ohne Bibliothek oder in QTEMP
    By msost in forum NEWSboard Programmierung
    Antworten: 4
    Letzter Beitrag: 13-09-16, 13:56
  3. kopieren von bibliothek
    By logo_2 in forum IBM i Hauptforum
    Antworten: 1
    Letzter Beitrag: 28-04-03, 08:17
  4. Bibliothek #LIBRARY
    By procher in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 23-10-02, 18:32
  5. Antworten: 1
    Letzter Beitrag: 02-10-01, 00:00

Tags for this Thread

Berechtigungen

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