-
danke für Euren zahlreichen Tips.
"im übrigen ist es keine besonders gute Idee Updates in UDFs auszuführen. "
-> Tatsächlich mache ich keinen Update in der UDF, sondern einen create table sowie einen insert in eine Log-Datei. Ich erstelle also mit meiner Select Anweisung 792 Tabellen und protokolliere die Create Table-Anweisung in einer Log-File.
"warum führst Du ein Skript aus ?" -> weil ich im ACS-SQL-Skript-Editor schön den Fortschritt beim Abarbeiten der einzelnen Schritte sehe. Oder bei Bedarf kann ich zum Testen auch nur einen oder 3 oder 5 Schritte ausführen. Tolle Funktionalität im ACS :-)
"Ein select count(*) hilft nicht?" -> leider nein, da ich Felder der Tabelle, auf die der Select geht, an die Funktion weiterreiche
"Schreib' dir eine Stored Procedure oder führe eine dynamsiche Prozedur (BEGIN ... END - und dazwischen SQL-Befehle), in der ein Cursor definiert wird, über den das SQL-Statement komplett verarbeitet wird. Damit sollten dann Deine Funktionen alle ausgeführt werden."
-> den Cursor lese ich dann per Fetch?
-
Ja! Du verarbeitest einen ganz normalen Cursor:
DECLARE, OPEN, FETCH, CLOSE
-
 Zitat von JotSo
danke für Euren zahlreichen Tips.
"im übrigen ist es keine besonders gute Idee Updates in UDFs auszuführen. "
-> Tatsächlich mache ich keinen Update in der UDF, sondern einen create table sowie einen insert in eine Log-Datei. Ich erstelle also mit meiner Select Anweisung 792 Tabellen und protokolliere die Create Table-Anweisung in einer Log-File.
"warum führst Du ein Skript aus ?" -> weil ich im ACS-SQL-Skript-Editor schön den Fortschritt beim Abarbeiten der einzelnen Schritte sehe. Oder bei Bedarf kann ich zum Testen auch nur einen oder 3 oder 5 Schritte ausführen. Tolle Funktionalität im ACS :-)
"Ein select count(*) hilft nicht?" -> leider nein, da ich Felder der Tabelle, auf die der Select geht, an die Funktion weiterreiche
"Schreib' dir eine Stored Procedure oder führe eine dynamsiche Prozedur (BEGIN ... END - und dazwischen SQL-Befehle), in der ein Cursor definiert wird, über den das SQL-Statement komplett verarbeitet wird. Damit sollten dann Deine Funktionen alle ausgeführt werden."
-> den Cursor lese ich dann per Fetch?
... eigentlich brauchst Du da keinen Fetch. Sieh Dir mal das Beispiel in der SQL Reference an:
BEGIN
DECLARE fullname CHAR(40);
FOR vl AS
c1 CURSOR FOR
SELECT firstnme, midinit, lastname FROM employee
DO
SET fullname =
lastname || ', ' || firstnme ||' ' || midinit;
INSERT INTO TNAMES VALUES ( fullname );
END FOR;
END;
Aufpassen must Du mit dem error Handling, das ist etwas hakelig. Ohne Continue Handler düst du da unversehens aus der Stored procedure raus.
D*B
-
Das "Blocken" kommt aus der Connection-Eigenschaft des jeweiligen Treibers (außer dem lokalen). Hier kann man die Blocksize erhöhen um die Anzahl Sätze je Block zu vergrößern.
Deshalb sind es bei kurzen Sätzen mehr Zeilen als bei langen Sätzen.
Similar Threads
-
By alex61 in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 12-07-16, 10:23
-
By mott in forum NEWSboard Programmierung
Antworten: 1
Letzter Beitrag: 10-09-15, 18:33
-
By Robi in forum NEWSboard Programmierung
Antworten: 10
Letzter Beitrag: 22-05-15, 08:31
-
By Creedem in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 19-05-15, 11:21
-
By TARASIK in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 19-09-02, 11:59
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