Xmlgen.getxml Nested Cursors with LONG RAW and BLOB Data Types

I am trying to use a nested cursor with xmlgen.getxml that has a long raw or blob column. In either case, it will not return to me any data in the xml document pertaining to that LONG RAW or BLOB column. If I do not use a nested cursor, it works fine.
Example:
SELECT xmlgen.getxml('SELECT x, CURSOR(SELECT y FROM y_tab WHERE y_tab.x_id = x_tab.x_id) y FROM x_tab') FROM dual;
This will not produce the information I am after.
However, simply running:
SELECT xmlgen.getxml('SELECT y FROM y_tab WHERE y_tab.x_id = <somevalue>') FROM dual;
Works???
Any ideas out there? Does anyone know if DBMS_XMLQUERY has this limitation?
Thanks,
Brad

It doesn't appear that I am able to attach the PDF files.  Can you supply your email (or I can supply mine) so I can send you the three files:
1.)  A good PDF (manually extracted from our old application)
2.)  Dump of the same PDF file (includes header/footer info)
3.)  A partially fixed PDF file (but some of the pictures / pages are cut off - specifically pages 3,5,9,10,12,14)
The way that we have tried to fix the file (in example 3 above) is the following:
a.)  Find the First Occurrence of "%PDF-"
b.)  Find the Last Occurrence of "%%EOF"
c.)  if the first "%PDF-" is found AND the last "%%EOF" is found, then
   i.)  Remove all data before the first %PDF-
   ii.)  Remove all data after the last %%EOF
Let me know if you need any other information.
Thanks,
Mike

Similar Messages

  • Line incomaptibilty betwwen RAW and CHAR data types in SAP Unicode System.

    Hi Gurus,
    I am working in SAP Unicode system.
    We have transferred the standard programs for Non-Unicode to Unicode system.
    In one standard function module, <table name> is defined in TABLES parameter as a type of TLINE structure, which has two fields - one is 132 length CHAR and other is 2 length CHAR.
    In the same function module , one subroutine is being called, for which <table name>  is passed.
    But in the FORM of subroutine, this table is defined as a type of HLINE, which has only one field - 134 length RAW data type.
    So due to confilct in data types ( CHAR and RAW ) , I am getting an error that both data types are not line compatible.
    Do i need to use casting concept to remove the error.
    Please suggest me the way to handle this.

    hi,
    declare the table as same data type.
    dont go for any other types.
    if you still want the form table as HLINE, then before the form call declare a varibale with TLINE data type pass the values to HLINE.
    i think this will be little complex, because again it will be type incompatablity.
    we can forcefully pass the values to HLINE with a class.
    but i think no need, declaring with same data type might be easy.
    Thanks
    Vinod

  • Migrating LONG RAW to BLOB and optimizing extent size

    Hi all,
    I got a quite fragmented table with a LONG RAW column I want to migrate to BLOB and defragment.
    DB version is Oracle9i Release 9.2.0.4.0 and this is a production environment.
    I know MOVE and/or CTAS are not possible with LONG RAW columns
    So, how can I do that? Is ALTER TABLE MODIFY the only possibility to migrate from LOING RAW to BLOB?
    Since ALTER TABLE MODIFY will lock the whole table preventing any DML operation, I need at least a rough estimate of the time needed for this operation. How can I do that?
    Since this table is quite fragmented, I also want to rebuilt it using a different extent size.
    I think I should issue a ALTER TABLE MOVE... after having performed the "ALTER TABLE MODIFY".
    Can I do something better to minimize unavailability to DML operations?
    thanks,
    andrea

    Hi,
    Is this an OCCI question?
    I don't see that "to_blob" is documented anywhere. The "to_lob" function can be used to convert long raw columns, but its use is pretty specific and certainly not for general query use.
    Regards,
    Mark
    EDIT1: Well, my local documentation set does not have "to_blob" in it at all. However, it is in the 11.1 SQL Language Reference on OTN:
    http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/functions186.htm#sthref2358
    Despite the fact that the documentation mentions "long raw" the function appears to only work with "raw" data in my 11.1 tests.
    What's your goal here?
    Edited by: Mark Williams on Jun 8, 2009 7:15 PM

  • How to insert records with LONG RAW columns from one table to another

    Does anybody know how to use subquery to insert records with columns of LONG RAW datatype from one table to another? Can I add a WHERE clause in the subquery statement? Thanks.

    Insert into ... Select statements are not supported for long or long raw. You will have to either use PL/SQL or convert your long raw to blobs.

  • Is the Fujifilm X100T compatible with Camera Raw and Lightroom?

    Is the Fujifilm X100T compatible with Camera Raw and Lightroom?
    I see that the X100 and the X100s are compatible. Nothing about the T model.

    https://forums.adobe.com/search.jspa?q=x100t&place=%2Fplaces%2F1383621&depth=ALL

  • Modify long raw to blob column

    Hello,
    I would like to know if it is possible to modify a long raw column into a blob column, without having to drop and recreate my table.
    There is already data inserted in the long raw column.
    Thanks in advance,
    Cindy

    'Fraid not.
    A LOB is stored "out-of-line", which means the actual "raw" data is held separately from the table. A long raw stores the data in-line. This means that you'll have to write some code to extract the "raw" data and write it to the LOB. Methinks you won't be able to add a LOB-type column to the table if you have a long raw existing in it already.

  • Oracle 01g and forms 6i with BLOB Data type

    Dear All,
    I have upgraded my database from oracle 9i R2 to oracle 10g R2. i have an application developed using oracle forms and reports 6i. this application have a form where it stores and retirive an image from the database, this image is stored in a table with a BLOB data type, it was being retrieved fine until we did the upgrade and now it is impossible for me to see the image and i am getting an error every time i retrive the data. it always pop a message saying that "INCONSISTENT DATA TYPE"
    please guys help.
    Regards

    you can try this procedure
    DECLARE
    t_blob BLOB;
    t_len NUMBER;
    t_file_name VARCHAR2(100);
    t_output UTL_FILE.file_type;
    t_TotalSize number;
    t_position number := 1;
    t_chucklen NUMBER := 4096;
    t_chuck raw(4096);
    t_remain number;
    BEGIN
    -- Get length of blob
    SELECT DBMS_LOB.getlength (PHOTO), ename || '_1.jpg'
    INTO t_TotalSize, t_file_name FROM DEMO WHERE ENAME ='moon';
    t_remain := t_TotalSize;
    -- The directory TEMPDIR should exist before executing
    t_output := UTL_FILE.fopen ('TEMPDIR', t_file_name, 'wb', 32760);
    -- Get BLOB
    SELECT PHOTO INTO t_blob FROM DEMO WHERE ENAME ='moon';
    -- Retrieving BLOB
    WHILE t_position < t_TotalSize
    LOOP
    DBMS_LOB.READ (t_blob, t_chucklen, t_position, t_chuck);
    UTL_FILE.put_raw (t_output, t_chuck);
    UTL_FILE.fflush (t_output);
    t_position := t_position + t_chucklen;
    t_remain := t_remain - t_chucklen;
    IF t_remain < 4096
    THEN
    t_chucklen := t_remain;
    END IF;
    END LOOP;
    END;
    it will work

  • Can message filters cause messages with blank subject and 1969 dates

    I have done many things to try to trace why I get messages with blank subjects and 1969 dates.
    downloaded TB
    created all new folders
    moved only persdict and msfFilterRules to the new profile.
    At this try
    set the option NOT to download messages on startup
    went off line and compacted all folders.
    emptied the inbox and all subfolders.
    Exited TB.
    deleted all files under pop.verizon.net except msgFilters rules.
    Deleted all msf files for local folders in my profile.
    opened TB.
    a few times
    --With Firefox went to verizon webmail and moved a few messages to the Verizon inbox.
    --moved to TB window
    -- Clicked <get messages>
    -- still received blank messages with 1969 dates
    -- deleted those messages
    -- emptied trash
    went to the filter rules and unclicked all filters that send files to local folders
    left 2 rules in place
    (1) if a sender was in my address list send the message to inbox folder called "Known sender"
    (2) if the subject was NOT a weird string like "&*%$@!+=?><" send the message to inbox folder called "Suspicious" This filter is because there is not an ELSE function in TB it is extremely unlikely that a message would have such a subject.
    [These two filters should move all messages except junk to the two folders.]
    I then tried the above procedure of going to Verizon, moving messages to Verizon Inbox, etc. a few times.
    I did NOT get the messages with blank subject and 1969 date!!
    Questions:
    (1) Is this just a fluke?
    (2) From understanding the internals of TB is it reasonable that some now-unchecked message filter(s) had caused there to be the oddball messages?
    (3) if It is a filter rule, how can I find out which one it is?

    I looked though all the condition specification options I do not see how using header info in a condition specification would '''change '''the header info.
    I looked at the possible actions on filters.
    I only see "tag" and "Star" as ones that might change header info.
    However, I found out that when I unchecked the first 17 of 19 filters and just had the two I explained above I would sometimes get a message with the 1969 date.
    Since then I deleted those two rules and made new versions and moved them to the bottom where the earlier versions had been. I have not had the 1969 messages since!!
    I have put a new filter at the top of the list that checks whether the date is before 1/1/971. If teh date is before 1/1/1971 the filter tags the message as important and moves it into the inbox folder named "Suspicious".
    I have not seen any 1969 messages since then.
    Since the problem was intermittent and because I was not able to create conditions whereby The 1969 dates would or would not occur, the problem may not be 'fixed'. I'll watch it for a while
    Meanwhile, I'll continue to manually go though the webmail on Verizon and as a test only download mail that I do not want to save for the long term. Messages I want to keep I'll move messages I want to keep for the long term into foldrs on Verizon. '''If '''after a while, I do not get any more of the 1969 messages, I'll move messages I want to keep into the Verizon inbox and download them into TB

  • Insert from Long Raw to Blob

    Hi all,
    I'm presently working on oracle 8.1.7,im having a table with Long Raw as a field.
    I want to insert the image into another table which containing a Blob as field.I wanted it to take place either by Database trigger or Procedure or any other way..
    Please can anybody provide me the script. I've already tried the procedure..select long raw to blob..I'm getting Numeric or Value error...i think the size of the image in the long raw table might be > 32767...
    Urgent please...
    thanks in advance
    rgds,
    John

    Hi John,
    Post this question in Database forum for quick help.
    The forum is present at this location.
    General Database Discussions
    Regards,
    Anupama

  • Please help to get onhand stock report with last purchase and billed date warehouse and item wise

    please help to get onhand stock report with last purchase and billed date warehouse and item wise

    Hi Rajeesh Ambadi...
    Try This
    SELECT distinct T0.ITEMCODE , t1.ItemName, T0.ONHAND as 'Total Qty',  
      T1.LASTPURDAT ,t1.LastPurPrc
    FROM OITW T0 INNER JOIN OITM T1 ON T0.ITEMCODE = T1.ITEMCODE
    INNER JOIN OITB T2 ON T1.ITMSGRPCOD=T2.ITMSGRPCOD left join ibt1 t3 on t3.itemcode = t0.itemcode and t3.whscode = t0.whscode
    WHERE
    T0.ONHAND>0
    AND T0.WhsCode ='[%0]'
    Hope Helpful
    Regards
    Kennedy

  • How do i save a calender i have created with the photo and the dates saved on separate pages?

    how do i save a calender i have created in photoshop with the photo and the dates saved as two separate pages?  when i save as pdf or jpeg they are authomatically saving 1 pg with the photo and dates on one page.  This is causing problems when i print.

    Hi there, in case your printer cannot print very large, you can also crop down two versions and print them as separate documents.
    1) Create a guide where you would like to split the pages by clicking on the ruler (hit command R if they are not showing) and dragging to the desired area.
    Creating the guide will make it so you can be precise in the way you split up your page, and so that no part of the image will be repeated or lost.
    2) Select the Crop Tool and fit the crop area to the top half of your calendar, using the guide you've just made to snap to the right spot. Hit return to finalize the crop.
    3) Go to File > Save As. Name the file something like calendar_top and select the desired file format. Hit "Save."
    4) Once you get back to your calendar file, Go to the History panel and select "Drag Guide." This will take you back to the step before you cropped the image.
    5) Repeat the steps as before for the bottom half of the calendar, once again using the guide to help you make your crop area.
    So then you would just print each of the two pages individually. The images will not be contained within one document, but if you have Acrobat you could combine the files.
    I hope this helps!

  • Limitation of converting from Long Raw to Blob

    Hi All,
    DB:11g
    Oracle Apps:R12
    Is there a limitation of converting from Long Raw to Blob?
    Please share your experience on this subject in case anyone has faced it before.
    Thanks for your time!
    Regards,

    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:13213885403654
    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:510622111991

  • Oracle 10g XE and CLOB data type

    I am using Oracle 10.2.0.1.0 Express Edition and I wish to store large amounts of data in a CLOB column. I have created my table using a "standard" SQL statement similar to the following:
    CREATE TABLE LotsofData(
    id INT NOT NULL,
    data CLOB);
    The table is created successfully, so far so good.
    And I used a "standard" insert SQL statement to insert large amount of data into the before mentioned table, similar to the follwing:
    INSERT INTO LotsofData VALUES('4043', 'The quick brown fox jumps over the lazy dog.The quick brown fox jumps over the lazy dog <insert more iterations>');
    The data being inserted takes up 4043 bytes. Now when attempting, using among other programs the handy web interface, to execute the insert statement I get this error:
    Error starting at line 1 in command:
    INSERT INTO LotsofData VALUES('4043', 'The quick brown fox jumps over the lazy dog.The quick brown fox jumps over the lazy dog <insert more iterations>');
    Error at Command Line:1 Column:38
    Error report:
    SQL Error: ORA-01704: string literal too long
    Now if I reduce the size of the data to be inserted to 4000 bytes or below there is no problem. I have performed searches on google groups, google search engine, the oracle site, this forum but not found a way to solve it... I have found documentation stating that there is support for 4gb of user data, but well that doesn't really help.
    I have been on the trail of TABLESPACE and working with that, but with no luck. The data type BFILE will not work as I need to be able to change the data after it has been inserted into the table.
    Is the 4000 bytes a limitation in the Express Edition and I should just forget it, or is there a way I configure the database to accept large amounts of data. Should I be creating the table using a different SQL statement?
    kind regards
    Chris Nilsson

    Right... I found out how you can solve this, well not through the web interface... but oh well it is possible though...
    the error I was getting was: ORA-01704:     string literal too long.
    the keyword/phrase is "bind variables"... Did a little more searching and found this site:
    http://www.akadia.com/services/ora_bind_variables.html
    So basically you use bind variables to insert data which fills more than 4000 bytes...
    Since the data I will be inserting will be inserted via Java/.NET application I found the section called "Bind Variables in VB, Java and other applications" the most interesting... During my testing and I had neglected to use PreparedStatements in Java, and according to the site, using PreparedStatement provided an easier solution as the API does most of the work for you. My solution was to create a small program which read the large amounts of data from a file then feed this to a PreparedStatement, setObject or setASCIIStream/setCharacterStream, then execute it.
    Well I hope this helps other people who get the same error code.

  • UNDERSTAND THE NEW DATE AND TIME DATA TYPES IN ORACLE 9I

    제품 : SQL*PLUS
    작성날짜 : 2001-08-01
    UNDERSTAND THE NEW DATE AND TIME DATA TYPES IN ORACLE 9I
    ========================================================
    PURPOSE
    Oracle 9i 에서 소개되는 새로운 datetime data type 에 대해 소개한다.
    Explanation
    Example
    1. Datetime Datatypes
    1) TIMESTAMP
    : YEAR/MONTH/DAY/HOUR/MINUTE/SECOND
    2) TIMESTAMP WITH TIME ZONE
    : YEAR/MONTH/DAY/HOUR/MINUTE/SECOND/
    TIMEZONE_HOUR/TIMEZONE_MINUTE( +09:00 )
    or TIMEZONE_REGION( Asia/Seoul )
    3) TIMESTAMP WITH LOCAL TIME ZONE
    : YEAR/MONTH/DAY/HOUR/MINUTE/SECOND
    4) TIME WITH TIME ZONE
    : HOUR/MINUTE/SECOND/TIMEZONE_HOUR/TIMEZONE_MINUTE
    2. Datetime Fields
    1) YEAR/MONTH/DAY/HOUR/MINUTE
    2) SECOND(00 to 59.9(N) is precision) : Range 0 to 9, default is 6
    3) TIMEZONE_HOUR : -12 to 13
    4) TIMEZONE_MINUTE : 00 to 59
    5) TIMEZONE_REGION : Listed in v$timezone_names
    3. DATE 와 TIMESTAMP 와의 차이점
    SQL> select hiredate from emp;
    HIREDATE
    17-DEC-80
    20-FEB-81
    SQL> alter table employees modify hiredate timestamp;
    SQL> select hiredate from employees;
    HIREDATE
    17-DEC-80 12.00.00.000000 AM
    20-FEB-81 12.00.00.000000 AM
    단, 해당 Column 에 Data 가 있다면 DATE/TIMESTAMP -> TIMESTAMP WITH
    TIME ZONE 으로 Convert 할 수 없다.
    SQL> alter table employees modify hiredate timestamp with time zone;
    alter table employees modify hiredate timestamp with time zone
    ERROR at line 1:
    ORA-01439: column to be modified must be empty to change datatype
    4. TIMESTAMP WITH TIME ZONE Datatype
    TIMESTAMP '2001-05-24 10:00:00 +09:00'
    TIMESTAMP '2001-05-24 10:00:00 Asia/Seoul'
    TIMESTAMP '2001-05-24 10:00:00 KST'
    5. TIMESTAMP WITH LOCAL TIME ZONE Datatype
    SQL> create table date_tab (date_col TIMESTAMP WITH LOCAL TIME ZONE);
    SQL> insert into date_tab values ('15-NOV-00 09:34:28 AM');
    SQL> select * from date_tab;
    DATE_COL
    15-NOV-00 09.34.28.000000 AM
    SQL> alter session set TIME_ZONE = 'EUROPE/LONDON';
    SQL> select * from date_tab;
    DATE_COL
    15-NOV-00 12.34.28.000000 AM
    6. INTERVAL Datatypes
    1) INTERVAL YEAR(year_precision) TO MONTH
    : YEAR/MONTH
    : Year_precision default value is 2
    SQL> create table orders (warranty interval year to month);
    SQL> insert into orders values ('2-6');
    SQL> select warranty from orders;
    WARRANTY
    +02-06
    2) INTERVAL DAY (day_precision) TO SECOND (fractional_seconds_precision)
    : DAY/HOUR/MINUTE/SECOND
    : Logon time 확인시 주로 사용
    : day_precision range 0 to 9, default is 2
    SQL> create table orders (warranty interval day(2) to second);
    SQL> insert into orders values ('90 00:00:00');
    SQL> select warranty from orders;
    WARRANTY
    +90 00:00:00.000000
    7. Interval Fields
    - YEAR : Any positive or negative integer
    - MONTH : 00 to 11
    - DAY : Any positive or negative integer
    - HOUR : 00 to 23
    - MINUTE : 00 to 59
    - SECOND : 00 to 59.9(N) where 9(N) is precision
    8. Using Time Zones
    1) Database operation
    - Defined at CREATE DATABASE
    - Can be altered with ALTER DATABASE
    - Current value given by DBTIMEZONE
    2) Session operation
    - Defined with environment variable ORA_SDTZ
    - Can be altered with ALTER SESSION SET TIME_ZONE
    - Current value given by SESSIONTIMEZONE
    3) TIMESTAMP WITH LOCAL TIMEZONE
    - TIME_ZONE Session parameter
    : O/S Local Time Zone
    Alter session set time_zone = '-05:00';
    : An absolute offset
    Alter session set time_zone = dbtimezone;
    : Database time zone
    Alter session set time_zone = local;
    : A named region
    Alter session set time_zone = 'America/New_York';
    Reference Document
    ------------------

    Hi ,
    I am facing the same problem and my scenario is also same (BAPI's).
    So can you please tell me how you overcome this problem .
    Thanks,
    Rahul

  • Joining table using CHAR and VARCHAR data type as indicator

    Hi All,
    I would like to join 3 tables together but I'm unable to get a perfect concordance (using =) between CHAR and VARCHAR data type.
    Does a command exist to get impartially all data treated as CHAR or VARCHAR ?
    Thanks in advance for your help !

    You want the database to perform with such a crappy database design? Good luck with that.. Instead, you need to look at why you are NOT using surrogate integer based keys for your data tables..
    Thank you,
    Tony Miller
    Webster, TX
    If vegetable oil is made of vegetables, what is baby oil made of?
    If this question is answered, please mark the thread as closed and assign points where earned..

Maybe you are looking for