-
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 16:55.
Grund: Codepagefehler korrigiert
-
... für CRTSQLPKG brauchst Du keine Quelle.
D*B
-
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.
-
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
-
By ahschneider in forum IBM i Hauptforum
Antworten: 10
Letzter Beitrag: 28-06-17, 09:18
-
By msost in forum NEWSboard Programmierung
Antworten: 4
Letzter Beitrag: 13-09-16, 12:56
-
By logo_2 in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 28-04-03, 07:17
-
By procher in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 23-10-02, 17:32
-
By PS in forum IBM i Hauptforum
Antworten: 1
Letzter Beitrag: 01-10-01, 23:00
Tags for this Thread
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- You may not post attachments
- You may not edit your posts
-
Foren-Regeln
|
Erweiterte Foren Suche
Google Foren Suche
Forum & Artikel Update eMail
AS/400 / IBM i
Server Expert Gruppen
Unternehmens IT
|
Kategorien online Artikel
- Big Data, Analytics, BI, MIS
- Cloud, Social Media, Devices
- DMS, Archivierung, Druck
- ERP + Add-ons, Business Software
- Hochverfügbarkeit
- Human Resources, Personal
- IBM Announcements
- IT-Karikaturen
- Leitartikel
- Load`n`go
- Messen, Veranstaltungen
- NEWSolutions Dossiers
- Programmierung
- Security
- Software Development + Change Mgmt.
- Solutions & Provider
- Speicher – Storage
- Strategische Berichte
- Systemmanagement
- Tools, Hot-Tips
Auf dem Laufenden bleiben
|
Bookmarks