[NEWSboard IBMi Forum]

Hybrid View

  1. #1
    Registriert seit
    May 2004
    Beiträge
    184
    Ich habe jetzt im STRSQL mit PF13 den Eintrag Commit auf *all gesetzt und danach hat der Insert geklappt. Kleiner Tipp für Unerfahrene, danach "COMMIT" eingeben damit die Änderung auch angenommen wird.

    Eine Frage habe ich noch. Wenn ich mir jetzt die Datei ansehe, steht dort nur "Pointer".
    Wie kann ich überprüfen, ob die Bilder korrekt in der Tabelle sind?

    Herzlichen Dank an alle
    Jenne

  2. #2
    Registriert seit
    Aug 2001
    Beiträge
    2.928
    STRSQL is wie so vieles "stabilized", und wird seit Release V4R5 nicht mehr weiter entwickelt.
    Wenn Du die Abfrage mit dem IBM i Navigator ausführst, siehst Du die Hex-Werte in der Spalte. (BLOB wird ansonsten nicht umgesetzt!)

    ... um COMMIT *ALL zu setzen und verwenden, muss man schon sehr genau wissen was man tut, da man ALLES sperrt! COMMIT *CHG oder *CS reichen eigentlich immer aus.

    Birgitta
    Birgitta Hauser

    Anwendungsmodernisierung, Beratung, Schulungen, Programmierung im Bereich RPG, SQL und Datenbank
    IBM Champion seit 2020 - 5. Jahr in Folge
    Birgitta Hauser - Modernization - Education - Consulting on IBM i

  3. #3
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    festzustellen, ob alles 'ordentlich' drin ist,
    indem du es wieder ausliest und in ein PDF speicherst.


    --> schon 36 Teilnehmer an der Umfrage!
    Das Notwendige steht über dem technisch machbaren.
    (klingt komisch, funktioniert aber!)

  4. #4
    Registriert seit
    Jun 2001
    Beiträge
    2.044
    hier mal ein Uralt Bsp. aus dem Netz, das wir damals für die ersten Tests verwendet haben
    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,                         
    C+                      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!)

  5. #5
    Registriert seit
    Apr 2015
    Beiträge
    5
    wie Du siehst arbeite ich aber doch mit Commitment Control








    sony e1 handytasche

Similar Threads

  1. Dateien im TIFF-Format in OnDemand importieren
    By MB in forum IBM i Hauptforum
    Antworten: 5
    Letzter Beitrag: 06-06-03, 22:14
  2. Blob-Handling
    By infomio in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 28-03-03, 16:46
  3. Grafik von PC auf AS400 (als PAGSEG oder GDF)
    By elmar in forum IBM i Hauptforum
    Antworten: 7
    Letzter Beitrag: 20-02-02, 07:30
  4. GUI/Grafik
    By Woerlein in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 04-07-01, 23:16
  5. Bilder vom PC ins AS400 importieren
    By go-dany-go in forum IBM i Hauptforum
    Antworten: 3
    Letzter Beitrag: 25-04-01, 14:52

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • You may not post attachments
  • You may not edit your posts
  •