-
BLOB Feld
Hallo an alle,
ich möchte ein image in einem BLOB Feld speichern.
Mein SQL dazu ist :
PHP-Code:
INSERT INTO MYLIB/TBL01P ("RID", FLDBLOB) VALUES(1,
blob('/home/myfolder/aimg.png'))
Frage : Ist das der richtige Aufbau ?
Das System meckert nicht wenn ich einen ungültigen Pfad oder ungültigen Dateinamen angebe.
Gruß
Michael
-
Im Prinzip ja,
Wandel mal mein Bsp. (ist auch nicht von mir, kommt von irgendwo aus dem Netz)
Felder wie
PIC_FO findest du in der Umwandlungsliste
PHP-Code:
D SQL_FILE_READ...
D C CONST(2)
D SQL_FILE_CREATE...
D C CONST(8)
D SQL_FILE_OVERWRITE...
D C CONST(16)
D SQL_FILE_APPEND...
D C CONST(32)
D ITEM S 5P 0
D PIC S SQLTYPE(BLOB_FILE)
D OUT S SQLTYPE(BLOB_FILE)
C/EXEC SQL SET OPTION NAMING=*SYS, COMMIT=*NONE
C/END-EXEC
*
***********************************************************
* CREATE A FILE WITH A BLOB COLUMN
***********************************************************
C/EXEC SQL DROP TABLE ITEMPIC
C/END-EXEC
*
***********************************************************
* CREATE A FILE WITH A BLOB COLUMN
***********************************************************
C/EXEC SQL
C+ CREATE TABLE ITEMPIC
C+ (ITEMNO DEC(5 , 0) NOT NULL,
C+ PICTURE BLOB(8M) WITH DEFAULT NULL,
C+ PRIMARY KEY( ITEMNO )
C+ )
C/END-EXEC
*
***********************************************************
* WRITE AN ITEM TO THE FILE
*
* PIC_FO = FILE OPTIONS (SEE SQL CONSTANTS, ABOVE)
* PIC_NAME = FILE NAME TO SET BLOB TO
* PIC_NL = LENGTH OF FILE NAME
*
* TEST.JPG WILL BE WRITTEN TO THE 2ND COLUMN OF THE FILE
***********************************************************
C EVAL ITEM = 10001
C EVAL PIC_FO = SQL_FILE_READ
C EVAL PIC_NAME = '/TMP/TEST.BMP' MIT BMP !!!!!
C EVAL PIC_NL = %LEN(%TRIMR(PIC_NAME))
*
C/EXEC SQL INSERT INTO ITEMPIC VALUES (:ITEM,:PIC)
C/END-EXEC
C EVAL ITEM = 10002
C EVAL PIC_FO = SQL_FILE_READ
C EVAL PIC_NAME = '/TMP/TEST.PDF' MIT PDF !!!!
C EVAL PIC_NL = %LEN(%TRIMR(PIC_NAME))
*
C/EXEC SQL INSERT INTO ITEMPIC VALUES (:ITEM,:PIC)
C/END-EXEC
*
***********************************************************
* READ A RECORD
*
*
* OUT_FO = FILE OPTIONS (CREATE FILE OR OVERWRITE IT)
***********************************************************
C EVAL ITEM = 10001
C EVAL OUT_FO = SQL_FILE_OVERWRITE
C EVAL OUT_NAME = '/TMP/TESTOUT.BMP'
C EVAL OUT_NL = %LEN(%TRIMR(OUT_NAME))
C/EXEC SQL SELECT PICTURE
C+ INTO :OUT
C+ FROM ITEMPIC
C+ WHERE ITEMNO = :ITEM
C/END-EXEC
C EVAL ITEM = 10002
C EVAL OUT_FO = SQL_FILE_OVERWRITE
C EVAL OUT_NAME = '/TMP/TESTOUT.PDF'
C EVAL OUT_NL = %LEN(%TRIMR(OUT_NAME))
C/EXEC SQL SELECT PICTURE
C+ INTO :OUT
C+ FROM ITEMPIC
C+ WHERE ITEMNO = :ITEM
C/END-EXEC
C EVAL *INLR = *ON
Das Notwendige steht über dem technisch machbaren.
(klingt komisch, funktioniert aber!)
-
Hi,
danke , dank des Beispiels bin ich ein Schritt weiter gekommen
Gruß
Michael
-
Guten Morgen.
Wenn es nur darum geht eine Datei in ein BLOB-Feld einer Tabelle zustellen dann versuchs mal mittels
Code:
GET_BLOB_FROM_FILE('/pfad/file.png')
Dieser Aufruf muss aber unter COMMIT geschehen.
Greets
Similar Threads
-
By _MG_ in forum NEWSboard Programmierung
Antworten: 2
Letzter Beitrag: 15-09-17, 15:02
-
By dschroeder in forum IBM i Hauptforum
Antworten: 14
Letzter Beitrag: 31-08-16, 15:32
-
By Jenne in forum NEWSboard Programmierung
Antworten: 13
Letzter Beitrag: 17-04-15, 08:41
-
By GJV23 in forum IBM i Hauptforum
Antworten: 13
Letzter Beitrag: 19-02-15, 11:09
-
By infomio in forum IBM i Hauptforum
Antworten: 3
Letzter Beitrag: 28-03-03, 16:46
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