-
SQL-Script ausführen
Hallo Ihr,
wir haben von einem Linux-System ein SQL-Script, welches eine Stored-Procedure auf einer fernen Datenbank ausführt und die Ausgabe in eine Datei umleitet. Wie kann ich so etwas auf der iSeries bewerkstelligen?
Soweit ich weiß, kann man mit RUNSQLSTM ein Skript ausführen. Kann ich in dem Skript dann auch CONNECT ausführen? Und wie kann ich die Ausgabe umleiten, ohne ein CL-Programm drum herum zu bauen? Oder geht auch alles mit der QShell?
Danke, Titus
-
da gibt es mehrere Hürden
- Connect geht nur, wenn die ferne Datenbank DRDA kann und ein Eintrag im RDB vorhanden ist
- im Script kommt man nicht an ein von einer stored Procedure zurück gegebenes ResultSet dran
- Ausgaben kann man im Script nicht einfach umleiten
Das sieht mir eher nach Java aus, aber da müsste man erstmal etwas genauer wissen, was ihr da vorhabt!
D*B
 Zitat von Sensonaut
Hallo Ihr,
wir haben von einem Linux-System ein SQL-Script, welches eine Stored-Procedure auf einer fernen Datenbank ausführt und die Ausgabe in eine Datei umleitet. Wie kann ich so etwas auf der iSeries bewerkstelligen?
Soweit ich weiß, kann man mit RUNSQLSTM ein Skript ausführen. Kann ich in dem Skript dann auch CONNECT ausführen? Und wie kann ich die Ausgabe umleiten, ohne ein CL-Programm drum herum zu bauen? Oder geht auch alles mit der QShell?
Danke, Titus
-
Vielleicht wäre auch ein STRQMQRY eine Möglichkeit?
-
Das Problem mit Prozeduren, die Resultsets zurückgeben, hatte wir hier schon mal.
QMQRY, RUNSQLSTM, embedded SQL unterstützen das nicht.
Hier ist entweder Java oder ggf. CLI-Programmierung nötig.
-
Aus RPG heraus ist der Zugriff wohl am günstigsten über das CLI-API zu realisieren. Die SQL/CLI Schnittstelle bietet hier alle benötigten Funktionen.
- Connection herstellen
- Script ausführen (Stored Procedure)
- Ergebnis binden
- in lokale Datei wegschreiben
-
Eure Vorschläge sind alle sehr interessant. Mit CL oder RPG würde ich auch sicher etwas hingenommen. Das würde jetzt aber zu lange dauern. Wir haben hier mal weiter experimentiert. Inzwischen bin ich so weit, dass die Prozedur ausgeführt wird:
Code:
STRSQH CMD('db2 -x -r db -u dbuser -p dbpass "call generate_ff_data (13501, '02', ';')" | sed -n 's/;/&/p' > out.txt')
Leider kommt es nun aber zu einem Problem mit CCSIDs. In der Ausgabedatei erscheint statt der Ausgabe ein SQL-Fehler 57017, der darauf hinweißt, dass eine Konvertierung von CCSID 13488 nach 65535 nicht möglich ist. Jemand ne Idee, wie man das Problem noch löst?
Titus
-
Was soll SQL da auch machen ?
Du musst die Zieldatei mit einer gültigen CCSID versehen.
-
 Zitat von Fuerchau
Was soll SQL da auch machen ?
Du musst die Zieldatei mit einer gültigen CCSID versehen.
Das habe ich auch versucht. Ich habe mit CHGATR die CCSID der vorhandenen Ausgabedatei angepasst. Trotzdem kam der Fehler. 
Titus
-
Was für eine Programm rufst du da auf ?
Vielleicht steht dein Job auf CCSID 65535 und das Programm hat nur beim Lesen der Daten Schwierigkeiten ?
-
lass doch mal die Pipe mit dem Streamfile Editor und die Umleitung in die Datei weg, ob es dann geht (dann liegts an dem sed - der auch eine CCSID Option hat - oder an der Ausgabefile).
D*B
 Zitat von Sensonaut
Eure Vorschläge sind alle sehr interessant. Mit CL oder RPG würde ich auch sicher etwas hingenommen. Das würde jetzt aber zu lange dauern. Wir haben hier mal weiter experimentiert. Inzwischen bin ich so weit, dass die Prozedur ausgeführt wird:
Code:
STRSQH CMD('db2 -x -r db -u dbuser -p dbpass "call generate_ff_data (13501, '02', ';')" | sed -n 's/;/&/p' > out.txt')
Leider kommt es nun aber zu einem Problem mit CCSIDs. In der Ausgabedatei erscheint statt der Ausgabe ein SQL-Fehler 57017, der darauf hinweißt, dass eine Konvertierung von CCSID 13488 nach 65535 nicht möglich ist. Jemand ne Idee, wie man das Problem noch löst?
Titus
-
Danke für eure Hinweise. Aus bestimmten Gründen haben wir das bisher nicht wieder probiert. Falls es doch noch klappt, melde ich mich nochmal.
Gruß, Titus
Similar Threads
-
By Sony in forum IBM i Hauptforum
Antworten: 27
Letzter Beitrag: 20-07-09, 21:48
-
By christian_lettner in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 16-11-06, 10:15
-
By FNeurieser in forum NEWSboard Programmierung
Antworten: 3
Letzter Beitrag: 11-10-06, 14:53
-
By loeweadolf in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 01-06-06, 09:43
-
By Carsten in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 15-10-01, 19:53
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