Insert value to BLOB column

Hi dearest of Friends,
How how do I insert values to a BLOB column using SQL-DEVELOPER? Say I will save a JPEG file to it. Although I know how to display the contents of it (BLOB) using this tool, which is really a big help.
Thanks a lot

When you display the contents, there's a Load button to load your new content into it.
Regards,
K.

Similar Messages

  • Reg-inserting Values to blob column

    Dear Gurus,
    I need clarification for this code.
    create table demo
    ( id        int primary key,
      theBlob    blob
    create or replace directory my_files as '/export/home/tkyte/public_html';
    declare
        l_blob    blob;
        l_bfile    bfile;
    begin
        insert into demo values ( 1, empty_blob() )
        returning theBlob into l_blob;
        l_bfile := bfilename( 'MY_FILES', 'aria.gif' );
        dbms_lob.fileopen( l_bfile );
        dbms_lob.loadfromfile( l_blob, l_bfile,
                                   dbms_lob.getlength( l_bfile ) );
        dbms_lob.fileclose( l_bfile );
    end;
    / 1) What value the l_blob variable will contain after returning clause
    2)If we load value to l_blob variable using dbms_lob.loadfromfile() procedure,will it automatically load that value in the demo table.
    Cheers,
    Jey

    The BLOB is store inside the database if that's what you mean.
    For outside storage (ie in the OS file system), you need a BFILE.
    Some precisions about the internal storage though.
    Each LOB is associated with a segment of type "LOBSEGMENT" that resides in the same tablespace as the table (at creation time).
    - LOB data can be stored "in-line" if its size is less than 4000 bytes and if the clause ENABLE STORAGE IN ROW is specified when creating table (that's the default).
    - Otherwise, data is stored in the lob segment ("out-of-line" storage).

  • How to insert into a blob column

    hello,
    i want to insert data ina blob column.
    table is like :
    create table test(id number(1), blolcolumn blob);
    now i want to insert the value as specified below in blobcolumn using a pl/sql block.
    can anyone help in doing this using a pl/sql block?
    value to insert: 0x8000000025CE9B0483A7ECDE8DA5EA20C681841A091BF453EF33D6F58B3F0B5A2B869F48EF2C4A1A383C00FCAA8783FC16AF6E4C9F621C6EE07C4DA9B99EB914B101E46E4BB3EDECA29242B06DD600DF2577740A5C46F3C1D937EA9D090361B1FAA40E52CC3062A1C69420802A8CC68D4F16E9717F323D335611FCBE31CB18242E67E98940000000B1372A26C661D84C565B82C4BB6FDC4B2302A58E19588F99B55F84AF31DCB950C38725A69766D7B8B651464BBC81474A2AD5ECB8F5330CECBB059C35AE725C11400000003E86D68CD30617E9912A6B685F463D06B33079920BB64EE2768564273E98E621FA2841E6CEDB5EDB17E804C810EB552AF24EC359F35B4C7A34331EFBEE71B5B5030000000100014000000023CAC269B0DB17C47B0697AECF2EA8959EAB7F87C6B9273D4C8909A15A714D1D09DFA3E7F42EE3B8345A404EEA569A86CE29C5B204AF71C29C2344500BA2989080000000941810D14BEA288632783B39A5F946E1E4174787BA39695E3DDAFB1B6306453EC968E078F970771CDD8F744409C906039B2D9424BC7EB9824E9F81F8F681CDF989403F586B86091EBF573F911E8E8285FA09B6DD996B0B28E49F64E107526597F82BD0423EA6AD55B17A85B97BAD5BD6839EE72BA5B6DE3DD9C4E21D2DF4EDF740000000C35077FBCCED395621944ECD545DA4D8F9B0109A91067A9EA81CA11C075A51686089AA705578B6428815C08BFAF57165064D97FBBCD2A67CA44B2E70CE4471F340000000C21BA30F306E87FB299AFE849F52E32FDD8D134CA463B5D82B758C96BD70A69A52E6162E10B024F14CC91CBA79D07734A893D101BE1ED2C01D43D01D1276D0ED

    I think it may give an opinion:
    SELECT to_blob( utl_raw.cast_to_raw('0x8000000025CE9B0483A7ECDE8DA5EA20C681841A091BF453EF33D6F58B3F0B5A2B869F48EF2C4A1A383C00FCAA8783FC16AF6E4C9F621C6EE07C4DA9B99EB914B101E46E4BB3EDECA29242B06DD600DF2577740A5C46F3C1D937EA9D090361B1FAA40E52CC3062A1C69420802A8CC68D4F16E9717F323D335611FCBE31CB18242E67E98940000000B1372A26C661D84C565B82C4BB6FDC4B2302A58E19588F99B55F84AF31DCB950C38725A69766D7B8B651464BBC81474A2AD5ECB8F5330CECBB059C35AE725C11400000003E86D68CD30617E9912A6B685F463D06B33079920BB64EE2768564273E98E621FA2841E6CEDB5EDB17E804C810EB552AF24EC359F35B4C7A34331EFBEE71B5B5030000000100014000000023CAC269B0DB17C47B0697AECF2EA8959EAB7F87C6B9273D4C8909A15A714D1D09DFA3E7F42EE3B8345A404EEA569A86CE29C5B204AF71C29C2344500BA2989080000000941810D14BEA288632783B39A5F946E1E4174787BA39695E3DDAFB1B6306453EC968E078F970771CDD8F744409C906039B2D9424BC7EB9824E9F81F8F681CDF989403F586B86091EBF573F911E8E8285FA09B6DD996B0B28E49F64E107526597F82BD0423EA6AD55B17A85B97BAD5BD6839EE72BA5B6DE3DD9C4E21D2DF4EDF740000000C35077FBCCED395621944ECD545DA4D8F9B0109A91067A9EA81CA11C075A51686089AA705578B6428815C08BFAF57165064D97FBBCD2A67CA44B2E70CE4471F340000000C21BA30F306E87FB299AFE849F52E32FDD8D134CA463B5D82B758C96BD70A69A52E6162E10B024F14CC91CBA79D07734A893D101BE1ED2C01D43D01D1276D0ED')) FROM dual

  • How to insert data in BLOB column??

    How to insert data in BLOB column.
    Create table BLOBTest (message BLOB)
    insert into blobtest
    (message)
    values
    ('I am loving it');
    gives error ORA-01465: invalid hex number.

    ('I am loving it');This is not considered Binary (BLOB) data. Are you sure you don't want a Character (CLOB) column?

  • How to insert  data into BLOB column  using sql

    Hi all,
    How to insert data into BLOB column directly using sql .
    create  table temp
      a blob,
      b clob);
    SQL> /
    Insert into temp  values ('32aasdasdsdasdasd4e32','adsfbsdkjf') ;
    ERROR at line 1:
    ORA-01465: invalid hex number
    Please help in this.Thanks,
    P Prakash

    see this
    How to store PDF file in BLOB column without using indirect datastore

  • ORA-00600 error when inserting NULL in BLOB column

    Hi,
    I want to insert NULL value into a BLOB column w/o using empty_blob(), but I am getting the following error upon submission (both through program and upon directly executing it from TOAD/SQL*):
    java.sql.SQLException: ORA-00600: internal error code, arguments: [kxtotolc_lobopt], [], [], [], [], [], [], []
    The query is as follows:
    insert into image_rendering r
    (r.Version_date_time, r.id, r.Name, r.Type, r.Image_url, r.Image_filesize, r.Html, r.Original_Text, r.Redirect_url, r.Version, r.Rendering_size) values
    (sysdate, '1963884', '468x60_1.gif', '0', '225/9-468x60_1.gif', '1471', null, null, null, '1', '30670908')
    In the table r.Html, r.Original_Text are blob and clob columns respectively.
    If I remove the column r.Html (blob) and its corresponding value the following query executes fine :
    insert into image_rendering r
    (r.Version_date_time, r.id, r.Name, r.Type, r.Image_url, r.Image_filesize, r.Original_Text, r.Redirect_url, r.Version, r.Rendering_size)
    values
    (sysdate, '1963884', '468x60_1.gif', '0', '225/9-468x60_1.gif', '1471', null, null, '1', '30670908')
    I know I can also insert the query using the string empty_blob(), but I dont want to do it without using empty_blob() since it will involve changing my generic DB classes.
    The strange thing is that I created another table involving blob and clob columns through TOAD.
    In this table I can insert NULL values in the blob column without any error.
    Is there anything that can be done to insert a NULL into my blob column? Am I missing anything?
    Is there a setting in the database that will allow me to do this? cuz one table accepts null and the other doesn't. Its strange.
    I am using Oracle8i Enterprise Edition Release 8.1.7.0.0
    The query doen't execute through toad or sql* plus or through program (I am using thin oracle drivers: the usual classes12.zip file)
    thanks in advance
    - Nilesh

    From metalink
    Oracle 9i Message~~~~~~~~~~~~~~~~~
    Error:     ORA-14400 (ORA-14400)
    Text:     inserted partition key does not map to any partition
    Cause:     An attempt was made to insert a record into, a Range or Composite
         Range object, with a concatenated partition key that is beyond the
         concatenated partition bound list of the last partition -OR- An
         attempt was made to insert a record into a List object with a
         partition key that did not match the literal values specified for
         any of the partitions.
    Action:     Do not insert the key. Or, add a partition capable of accepting
         the key, Or add values matching the key to a partition
         specification
    >
    So check the date .
    What is your insert statement.
    Anand
    Edited by: Anand... on Mar 4, 2009 5:42 PM

  • Insert Image to BLOB column

    Hi,
    How can i insert a image/largefile into table (having BLOB column) from sql plus?
    Thanks

    Hi!
    Do this with PL/SQL.
    CREATE TABLE image_tbl
      filename VARCHAR2(4000),
      image   BLOB
    DECLARE
          v_blob       BLOB;
          v_srcfile    BFILE;
    BEGIN
          DBMS_LOB.CreateTemporary(v_blob, TRUE);
          DBMS_LOB.Open(v_blob, dbms_lob.Lob_ReadWrite);
          v_srcfile := Bfilename('IMAGE_DIR', 'image.gif');
          DBMS_LOB.FileOpen (v_srcfile, dbms_lob.File_ReadOnly);
          DBMS_LOB.LoadFromFile(v_blob, v_srcfile, DBMS_LOB.GetLength(v_srcfile));
          INSERT INTO image_tbl (filename, image)
          VALUES ('image.gif', EMPTY_BLOB());
          UPDATE image_tbl
          SET image = v_blob
          WHERE filename LIKE 'image.gif';
          DBMS_LOB.FileClose(v_srcfile);
          COMMIT;
    END;I hope that one will help you.
    yours sincerely
    Florian W.

  • Store the value  in BLOB column data type

    Hi All,
    I have a file of about 5MB. I want to store this in BLOB column data type of a table.
    Can we compress this file to store and when we take uncompress the same...or how do we do it.
    and what is the procedure to store this....
    pls. help me
    Thanks,
    Naresh

    Hi skud
    i juast want to store the agent code to variable.if i did get ur point...
    Why don't u just use a simple assign statment for example...
    DECLARE
    V_VALUE  NUMBER;
    BEGIN
    V_VALUE := LC354 ; -- IF it was a value as LC354 static i mean
    -- or u could use any value
    V_VALUE := :ur_form_item_name; --- if it was dynamic
    END;That's it .
    Hope this helps...
    Regards,
    Ammatu Allah.

  • Insert value into a column based on value of another column

    Hi,
    I am trying to insert a value into a record based on a column in
    the record, using a trigger. The complication arises because
    the new value is selected from the same table. For example:
    SELECT COL1, COL2, COL3, COL4 from TABLE1
    I want to set COL2 and COL3 based on the value of COL4. And to
    get the value of COL2 and COL3, I will go back to TABLE1 and set
    the condition to TABLE1.COL1 = :NEW.COL4
    I cannot seem to execute the trigger as I get the message "ORA-
    04091: table SYSTEM.TABLE1 is mutating, trigger/function may not
    see it" everytime.
    Is this the correct way to achieve what I wanted? Or is there
    another way?
    Appreciate your feedback. Thank you in advance.

    Hi,
    I am trying to insert a value into a record based on a column in
    the record, using a trigger. The complication arises because
    the new value is selected from the same table. For example:
    SELECT COL1, COL2, COL3, COL4 from TABLE1
    I want to set COL2 and COL3 based on the value of COL4. And to
    get the value of COL2 and COL3, I will go back to TABLE1 and set
    the condition to TABLE1.COL1 = :NEW.COL4
    I cannot seem to execute the trigger as I get the message "ORA-
    04091: table SYSTEM.TABLE1 is mutating, trigger/function may not
    see it" everytime.
    Is this the correct way to achieve what I wanted? Or is there
    another way?
    Appreciate your feedback. Thank you in advance. I'm not sure what you mean when you insert a value into a
    record, but if you are setting a value in a column of the same
    record using a trigger, then it's easy.
    :new.COL2 := ....:new.COL4...
    :new.COL3 := ....:new.COL4...
    The trigger must be 'INSERT or UPDATE' and 'FOR EACH RECORD'.
    If you are setting a different record in the same table, the
    solution is much more difficult.

  • Inserted value too large column: n

    Hi All,
    I'm loading some large flat files onto SAP HANA and the error file contains a large amount of errors stating that "ROLLBACK - inserted value too large for column: 104 >>". I'm getting a lot of errors and the number showing next to column varies. For example, the following are just an extract of the errors (I've removed the actual data after >>):
    ROLLBACK - inserted value too large for column: 104 >> .
    ROLLBACK - inserted value too large for column: 146 >>
    ROLLBACK - inserted value too large for column:  264 >>
    ROLLBACK - inserted value too large for column: 275 >>
    ROLLBACK - inserted value too large for column: 969 >>
    ROLLBACK - inserted value too large for column: 1140 >>
    For a sample, I have check every column against the definition of the table that it is being loaded into. All values are less than the size of each column and there are no special characters.
    My question is, what is the number that the error message is referring to. It's not the column number, nor is it the line position. Any tips for identifying the problem column, without change the column definition 1 by 1.
    Regards,
    Gary Elliott

    Hi Gary,
    Please refer the below thread which talks about the similar issue...
    [ROLLBACK] - inserted value too large for column: 9000000 >>
    Rgds,
    Murali

  • Problem inserting value in CLOB column from an XML file using XSU

    Hi,
    When I try to insert CLOB value into Oracle9i database from an XML document using XSU, I get an exception as below.
    09:37:32,392 ERROR [STDERR] oracle.xml.sql.OracleXMLSQLException: 'java.sql.SQLException: ORA-03237: Initial Extent of specified size cannot be allocated
    ORA-06512: at "SYS.DBMS_LOB", line 395
    ORA-06512: at line 1
    ' encountered during processing ROW element 0. All prior XML row changes were rolled back. in the XML document.
    All Element tags in XML doc. is mapped to columns in the database. One of the table columns is CLOB. That is the one that gives the above exception. Here is the xml...
    ID - is autogenerated value.
    <?xml version="1.0" ?>
    <ROWSET>
    <ROW num="1">
    <ID></ID>
    <SEQ>
    GCATAGTTGTTATGAAGAAATGGAAGAAAAATGCACTCAAAGTTGGGCTGTCAGGCTGTCTGGGGCTGAATTCTGGTGTGACAGTGTGATGAAGCCATCTTTGAGCCTAAATTTGATAATGAGCCAGTCATGATCTGGTTGTGATTACTATAACAAGATTAAATCTGAATAAGAGAGCCACAACTTCTTTAAAGACAGATTGTCAAGTCATTACATGGAAGAGGGAGATTGCTCCTTTGTAAATCAGGCTGTCAGGCCAACTGAATGAAGGACGTCATTGTACAGTAACCTGATGAAGATCAGATCAACCGCTCACCTCGCCG
    </SEQ>
    </ROW>
    </ROWSET>
    Can anyone identify what's the problem.. and suggest a solution for this..?
    Thanks in advance..
    Viji

    Would you please specify the XDK verison and database version?

  • Connection reset when inserting file to BLOB column

    Friends,
    When inserting a file to a BLOB clomun and the file is more than 1KB, I receive the following message: java.sql.SQLException: Io exception: Connection reset
    The code is this:
    int fileLength = (int)file.length();
    System.out.println("File length: "+fileLength);
    int cod = (int)(Math.random() * 1000);
    String sql = "INSERT INTO BLOB_TABLE VALUES(?,?)";
    try {
    FileInputStream fis = new FileInputStream(file);
    PreparedStatement pstmt = connection.prepareStatement(sql);
    pstmt.setInt(1, cod);
    pstmt.setBinaryStream(2, fis, fileLength);
    pstmt.executeUpdate();
    System.out.println("File insert sucess!");
    connection.close();
    Does anybody know what this can be? My database is oracle.
    Thanks!

    When you create objects on the database they are stored in the data dictionary by default in UPPER case.
    So in this line:
    src_loc bfile := bfilename('example_lob_dir', 'example.gif'); -- source location
    you need to reference the name of the directory object in upper case. e.g.
    src_loc bfile := bfilename('EXAMPLE_LOB_DIR', 'example.gif'); -- source location
    ;)

  • PHP/MySQL: Get value from one field, subtract 2, multiply by 20,   and insert value into another column on form submit

    Hello all,
    I'm pulling my hair out--thank you for any help you can give
    me.
    I have a form that a person fills out that has a field that
    asks "How
    many visitors including you" and I'd like them to type in a
    number, and
    on submit of the form, have that value -2 multiplied by 20
    and inserted
    into a "total cost" column.
    I'm using the standard DW server behaviors and I've searched
    the
    internet. How do I perform basic math on that value and
    insert it into
    the database?
    If you have any pointers, that would be great.
    Thank you!
    -John

    John R. Lenz wrote:
    > Your code below works great, and I just noticed links to
    your book were
    > available on your web site, and it's in the mail to me.
    Looking forward
    > to it.
    Thanks, hope you find it useful.
    > After the form is posted, I'd like to address the person
    who posted it
    > by their first name and last name, as well as some of
    the details. How
    > would you go about doing this in the best way? Would you
    set a variable
    > and echo it on the 'Thank you' page, or are there better
    ways of doing
    > it with a recordset and filtering it on form submit?
    To pass the details to a thank you page, you would need to
    store the
    information in $_SESSION variables. You could amend the
    earlier script
    like this:
    <?php
    session_start();
    if (isset($_POST['visitors'])) {
    if ($_POST['visitors'] < 3) {
    $num = 0;
    } else {
    $num = $_POST['visitors'] - 2;
    $_POST['total_cost'] = $num * 20;
    $_SESSION['total_cost'] = $_POST['total_cost'];
    $_SESSION['first_name'] = $_POST['first_name'];
    $_SESSION['last_name'] = $_POST['last_name'];
    ?>
    In the thank you page, put the following at the top of the
    page:
    <?php session_start(); ?>
    It must go before anything is output to the browser, so put
    it above the
    DOCTYPE declaration, and make sure there's no space before
    it.
    You can then use the $_SESSION variables in the thank you
    page.
    At the end of the page, add this to clear up the session
    variables:
    <?php
    $_SESSION = array();
    destroy_session();
    ?>
    David Powers, Adobe Community Expert
    Author, "The Essential Guide to Dreamweaver CS3" (friends of
    ED)
    Author, "PHP Solutions" (friends of ED)
    http://foundationphp.com/

  • Reading BFile datatype value to insert corresponding value into blob

    Hi,
    I have oracle 10.2.0 database.
    I have this table with 3 columns of datatypes
    TableA(id, Blob, BFile)
    now i have pdf files stored in a directory for every id which ranges from 1 till 100.
    for example for id=10, the pdf file name is cr10.pdf
    except that for some id there is no correpsonding pdf's.
    and i have a written a query where for a particular id, i link the corresponding pdf into the BFile. now is there a way where i can view the value of the bfile locator and find whether the bfile is null or not(i mean whether there is a pdf or not existing for that particular id)
    what i need to do is, based on the bfile value i will insert the pdf into the blob column.
    so based on the bfile value(ie whethe rthe pdf exisit or not) i will open the pdf and read the contents into the blob column.
    and somehow i have figure out that a pdf is not exisiting based on the bfile value and then insert a null into the blob column instead of getting an error by trying to read a pdf which doesn't exist.
    Can someone help me, how to find out existance of a file based on bfile value and insert value into blob.
    I want this is script to be automated instead of checking manually a file exists or not.
    Thanks,
    Philip.

    Hi,
    I have oracle 10.2.0 database.
    I have this table with 3 columns of datatypes
    TableA(id, Blob, BFile)
    now i have pdf files stored in a directory for every id which ranges from 1 till 100.
    for example for id=10, the pdf file name is cr10.pdf
    except that for some id there is no correpsonding pdf's.
    and i have a written a query where for a particular id, i link the corresponding pdf into the BFile. now is there a way where i can view the value of the bfile locator and find whether the bfile is null or not(i mean whether there is a pdf or not existing for that particular id)
    what i need to do is, based on the bfile value i will insert the pdf into the blob column.
    so based on the bfile value(ie whethe rthe pdf exisit or not) i will open the pdf and read the contents into the blob column.
    and somehow i have figure out that a pdf is not exisiting based on the bfile value and then insert a null into the blob column instead of getting an error by trying to read a pdf which doesn't exist.
    Can someone help me, how to find out existance of a file based on bfile value and insert value into blob.
    I want this is script to be automated instead of checking manually a file exists or not.
    Thanks,
    Philip.

  • Getting errors while writing to a BLOB column using PrepareStatement

    Hello,
    I am getting the following errors when I am trying to insert in a BLOB in the oracle 9i database:
    java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1 ORA-06502: PL/SQL: numeric or value error ORA-06512: at line 205 ORA-22297: warning: Open LOBs exist at transaction commit time
    It gets inserted into the BLOB column correctly even after throwing exception.I am using the following code:
    String outputXML = outputXML //Some huge string having a length of 52k
    String pKey = "DATA-WORKATTACH-URL MELLONFINCORP-GSS-CPG E-444!20061130T211932.030 GMT";
    String createDateTime = "20061212T145931.448 GMT";
    String createOpName = "Haque, Nadeem";
    String createOperator = "ADCDTB6";
    String createSystemID = "WFE";
    String insName = "TESt INS";
    String objClass = "Data-WorkAttach-Note";
    String updateDateTime = "20061207T191900.510 GMT";
    String updateOpName = "Haque, Nadeem";
    String updateOperator = "ADCDTB6";
    String updateSystemID = "WFE";
    String label = "This is a test for label";
    String attachDate = "20061207T191900.510 GMT";
    String attachedBy = "Nadeem";
    String attachName = "Nadeem Haque";
    String note = "This is a test note";
    String refObjectKey = "E-438!20061130T211932.030";
    String replicationDate = "20061207T191900.510 GMT";
    try{
    java.sql.PreparedStatement pstmt = null;
    java.sql.Statement stmt = null;
    java.io.OutputStream tempBlobOStream = null;
    oracle.sql.BLOB tempBlob = null;
    javax.naming.Context ctx = new javax.naming.InitialContext();
    tools.findPage("tempWorkPage").putString ("testctx", ctx.toString());     
    javax.sql.DataSource ds = (javax.sql.DataSource)ctx.lookup("jdbc/gswWorkflowReportingData");
    tools.findPage("tempWorkPage").putString ("testds", ds.toString());
    java.sql.Connection conn = ds.getConnection();
    tools.findPage("tempWorkPage").putString ("testconn", conn.toString());
    java.sql.ResultSet lobDetails = null;
         try{
              byte [] ba = outputXML.getBytes();
              String query = "INSERT INTO GSW06U.pc_data_workattach(PZINSKEY,PXCREATEDATETIME,ATTACHDATE,PXUPDATEDATETIME,PXCREATEOPNAME,PXCREATEOPERATOR,PXCREATESYSTEMID,PXINSNAME,PXOBJCLASS,PXUPDATEOPNAME,PXUPDATEOPERATOR,PXUPDATESYSTEMID,PYLABEL,ATTACHEDBY,ATTACHNAME,NOTE,REFOBJECTKEY,ATTACHSTREAM) values(?,to_date(concat(substr(?,1,8),substr(?,10,6)),'YYYYMMDDHH24MISS'),to_date(concat(substr(?,1,8),substr(?,10,6)),'YYYYMMDDHH24MISS'),to_date(concat(substr(?,1,8),substr(?,10,6)),'YYYYMMDDHH24MISS'),?,?,?,?,?,?,?,?,?,?,?,?,?,EMPTY_BLOB())";
              tools.findPage("tempWorkPage").putString ("query", query);
              pstmt = conn.prepareStatement(query);
              pstmt.setString(1, pKey); // Bind PZINSKEY
              pstmt.setString(2, createDateTime); // Bind PZINSKEY
              pstmt.setString(3, createDateTime);
              pstmt.setString(4, attachDate);
              pstmt.setString(5, attachDate);
              pstmt.setString(6, updateDateTime);
              pstmt.setString(7, updateDateTime);
              pstmt.setString(8, createOpName);
              pstmt.setString(9, createOperator);
              pstmt.setString(10, createSystemID);
              pstmt.setString(11, insName);
              pstmt.setString(12, objClass);
              pstmt.setString(13, updateOpName);
              pstmt.setString(14, updateOperator);
              pstmt.setString(15, updateSystemID);
              pstmt.setString(16, label);
              pstmt.setString(17, attachedBy);
              pstmt.setString(18, attachName);
              pstmt.setString(19, note);
              pstmt.setString(20, refObjectKey);
              pstmt.execute(); // Execute SQL statement
              // Retrieve the row just inserted, and lock it for insertion of the LOB columns
              stmt = conn.createStatement();
              lobDetails = stmt.executeQuery("SELECT AttachStream FROM GSW06U.pc_data_workattach WHERE PZINSKEY = '" + pKey + "' FOR UPDATE");
              tools.findPage("tempWorkPage").putString ("idvalue", pKey);
              // Retrieve Blob streams for AttachStream column and load the sample XML
              if( lobDetails.next()) {
              //Get the CLOB from the resultset
              tempBlob = (oracle.sql.BLOB)lobDetails.getBlob(1);
              tools.findPage("tempWorkPage").putString ("pos1", "at pos1");
              // Open the temporary CLOB in readwrite mode, to enable writing
              tempBlob.open(oracle.sql.BLOB.MODE_READWRITE);
              tools.findPage("tempWorkPage").putString ("pos2", "at pos2");
              // Get the output stream to write
              tempBlobOStream = tempBlob.getBinaryOutputStream();
              tools.findPage("tempWorkPage").putString ("pos3", "at pos3");
              // Write the data into the temporary CLOB from the byte array
              tempBlobOStream.write(ba);
              // Flush and close the stream
              tempBlobOStream.flush();
              conn.commit();
              //Close everything
    tempBlobOStream.close();
              tempBlobOStream = null;
              tempBlob.close();
              tempBlob =null;
              lobDetails.close();
              lobDetails = null;
              stmt.close();
              stmt = null;
              pstmt.close();
              pstmt = null;
              conn.close(); // Return to connection pool
              conn = null; // Make sure we don't close it twice
         catch(java.sql.SQLException sqlexp) {
                   tempBlob.freeTemporary();
                   sqlexp.printStackTrace();
                   tools.findPage("tempWorkPage").putString ("SQLException", sqlexp.toString());
         catch(java.lang.Exception exp) {
                   tempBlob.freeTemporary();
                   tools.findPage("tempWorkPage").putString ("InnerException", exp.toString());
                   exp.printStackTrace();
         finally
              if (lobDetails != null) {
              try { lobDetails.close(); } catch (java.sql.SQLException e) { System.out.println(" Error while Freeing Result sets" + e.toString()); }
              lobDetails = null;
              if (stmt != null) {
              try { stmt.close(); } catch (java.sql.SQLException e) {System.out.println(" Error while Freeing java Statement" + e.toString()); }
              stmt = null;
              if (pstmt != null) {
              try { pstmt.close(); } catch (java.sql.SQLException e) {System.out.println(" Error while Freeing java PrepareStatement" + e.toString()); }
              pstmt = null;
              try{
              if (tempBlob != null) {
         // If the BLOB is open, close it
         if (tempBlob.isOpen()) {
         tempBlob.close();
         // Free the memory used by this BLOB
         tempBlob.freeTemporary();
              tempBlob = null;
              catch (Exception ex) { // Trap errors
              System.out.println(" Error while Freeing LOBs : " + ex.toString());
              if (conn != null) {
              try { conn.close(); } catch (java.sql.SQLException e) { System.out.println(" Error while Freeing Connection" + e.toString()); }
              conn = null;
    catch(java.lang.Exception e)
         tools.findPage("tempWorkPage").putString ("LangException", e.toString());
         e.printStackTrace();
    }

    Hello,
    I am getting the following errors when I am trying to
    insert in a BLOB in the oracle 9i database:
    java.sql.SQLException: ORA-00604: error occurred
    at recursive SQL level 1 ORA-06502: PL/SQL: numeric
    or value error ORA-06512: at line 205 ORA-22297:
    warning: Open LOBs exist at transaction commit
    time
    You're doing exactly what the error says, that is committing with an open LOB. Look at the following piece of code: you write in the LOB, you flush it and then commit. There is no closing of the LOB stream before committing.
    Try putting the tempBlobOStream.close() instruction before the commit.
    // Write the data into the temporary CLOB from the
    he byte array
              tempBlobOStream.write(ba);
              // Flush and close the stream
              tempBlobOStream.flush();
    nn.commit();
              //Close everything
    tempBlobOStream.close();

Maybe you are looking for

  • HELP!....cant copy songs on to phone

    hi i have songs on my pc which play properly...i connect my phone via USB to copy the songs on my phone...on the pc it shows that the songs have copied correctly under my music folder on phone....but when i disconnect my phone from pc & try to play s

  • How to find the query name by seeing the program name?

    Hi, i have one auto generated program in production AQCSPU==========ZPSPOWHO====== Now user executing this program by taking help of se38 and sa38 t-code.But now suddenly sa38 and sa38 access blocked for the user so thay are now unable to execute the

  • GL account and CO object

    Hi friends, What is the tcode to see list of GL accounts(plantwise) with their corresponding CO object assignments? Thanks and regards.

  • WC7845 Scan to PDF Compression type

    Hi We have a WC7845.  With the Scan to PDF feature, we can select between 3 different levels of compression, but the type of compression is always the same: JBIG2. Is there a way to change the compression for Scan to PDF to CCITT? Thank you,-Dean

  • Can I upgrade My elements from windows to a mac version

    I've a Photoshop Elements 7. But recently I've bought a MacBook. Is it possible to buy an upgrade so I can use my elements for windows on my mac?