-
Meistens brauch ich Base64 wenn ich das ganze an ein HTTP-API übertragen will.
Klar geht das recht simple via SQL, jedoch verwende ich auch hierfür ein eigenes Service, dass mir das übernimmt, inkl. Fehlerhandling, Protokollierung und !Wiederanlauf! falls das Service nicht erreichbar sein sollte.
Da ich das in Python auf der i mache, würde ich dort auch das Kodieren ins Base64 übernehmen.
Wie Baldur schon sagte, gibt es bei SQL ein Limit. (Ich verstehe ja nicht, warum IBM hier nicht einfach CLOB als Parameter genommen hat.)
Gerade beim Umgang mit Files weiß man nie wie sich diese mit der Größe in den nächsten Jahren entwickeln werden.
Wenn das ganze nur für kurze Zeit halten soll, dann reicht es aber aus.
-
Wie oben bereits beschrieben, lässt sich eben Base64 in simplen 2K-Blöcken aneineinander reihen, was mit LIST_AGG( BINARY_READ 2K ) durchaus realisierbar ist.
Das Ergebnis ist dann eben ein CLOB 1208, das 2GB groß werden kann über LOB-Locator oder 16MB für RPGLE-Variable.
Warum sollte man also weitere Produkte bemühen, außer wenn es Spaß macht;-)
-
 Zitat von Fuerchau
Wie oben bereits beschrieben, lässt sich eben Base64 in simplen 2K-Blöcken aneineinander reihen, was mit LIST_AGG( BINARY_READ 2K ) durchaus realisierbar ist.
Das Ergebnis ist dann eben ein CLOB 1208, das 2GB groß werden kann über LOB-Locator oder 16MB für RPGLE-Variable.
Warum sollte man also weitere Produkte bemühen, außer wenn es Spaß macht;-)
Oder anders Formuliert: Warum einfach wenn's auch komplizierter geht :-)
-
Sag mal Baldur, Du bist dir da wirklich sicher, dass man noch die 2K Limite beachten muss und nicht direkt in einen 16MB String lesen kann?
kf
-
Falsch verstanden:
Das Base64-API kann nur maximal die ca. 2K. Allerdings kann List_Agg wiederum ohne Trennzeichen einen langen String bis 16 MB variable oder 2GB Lob-Locator füllen.
Ebenso wäre per IFS-Write auch eine direkte Ausgabe als Stream möglich.
Im Gegensatz zur Komprimierung ist jeder 2K-Block (Genauer 2046 ist durch 3 teilbar) unabhängig.
Die 2732 sind ja auch nicht glatt durch 3 teilbar, sondern durch 4 was einer Inputlänge von 2049 entspricht.
-
-----------gelöscht---------
Similar Threads
-
By ismiavoiwuascht in forum NEWSboard Programmierung
Antworten: 13
Letzter Beitrag: 27-04-20, 15:18
-
By ismiavoiwuascht in forum NEWSboard Programmierung
Antworten: 0
Letzter Beitrag: 25-04-20, 11:18
-
By camouflage in forum NEWSboard Programmierung
Antworten: 7
Letzter Beitrag: 28-08-15, 12:53
-
By Oswin in forum IBM i Hauptforum
Antworten: 2
Letzter Beitrag: 27-05-04, 15:50
-
By horst in forum IBM i Hauptforum
Antworten: 0
Letzter Beitrag: 10-07-01, 15:26
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