Clob Columns gettting swapped in a table in Oracle 10G

Hi Experts,
When we try to insert a data into a table having two clob columns, if the data size increases more than 1000 characters, the contents of these two clob columns getting swapped. If it is less than 1000 characters, it works fine.
We are using bea Jrockit 27.6 JDK, Oracle 10G, Hibernate2, ibatis. Oracle jdbc driver is 10.2.0.4.
Any pointers on the above would be appreciated.
Thanks in advance.
-OK

check if it is something related to inline and outline storage.
for LOB, if the data is less than 32k they are stored inline with table data. If they are more than 32k they are stored seperately. Perhaps...
one thing you can do is to use 2 tablespaces and assign one tablespace each for CLOB column then definitely you are apart.

Similar Messages

  • Transform columns in row for a table in Oracle 10g

    Hi,
    I am using Oracle 10g.
    There is a table (example) EMPLOYEE, with following structure
    IDUSER YEAR1 YEAR2 YEAR3
    12345 value1 value2 value3
    99999 value7 value6 value5
    and I need display :
    IDUSER YEAR
    12345 value1
    12345 value2
    12345 value3
    99999 value7
    99999 value6
    99999 value5
    How can I do this with without unpivot?
    Thanks

    Hi,
    Welcome to the forum!
    One way to unpivot in any version of Orace is to cross-join your table with another table (or resut set, in ths case) that has as many rows as you need toroduce from each row of your original table.
    Here's an example:
    WITH     cntr     AS
         SELECT     LEVEL     AS n
         FROM     dual
         CONNECT BY     LEVEL <= 3
    SELECT     e.iduser
    ,     CASE  c.n
             WHEN  1  THEN  year1
             WHEN  2  THEN  year2
             WHEN  3  THEN  year3
         END     AS uear
    FROM         cntr      c
    CROSS JOIN  employee  e
    I hope this answers your question.
    If not, post a little sample data (CREATE TABLE and INSERT statements, relevant columns only), and the results you want from that data.
    Explain, using specific examples, how you get those results from that data.
    Always say what version of Oracle you're using (e.g. 11.2.0.2.0).
    See the forum FAQ {message:id=9360002}
    Edited by: Frank Kulash on Apr 11, 2013 6:47 AM

  • How to hide the data in particular table in oracle 10g

    How to hide the data in particular table in oracle 10g
    i want steps

    If its on Report u can  always hide the column - Keyfigure or Selection - Display - Hide......y do u want to have it on the report if it is to be hided in the first place?

  • Can we make apply  join a column on which VPD policy applied in Oracle 10g

    Hi,
    i am planning to apply a column level security using VPD concept into Oracle 10g
    but i have a one doubt.
    Suppose i am going to apply a VPD policy based on user priviliges on a column DEPTNO in EMP table so whenever a particular user logs in,he will not see the deptno.But he can fetch the data from other table DEPT based on join condition EMP.DEPTNO=DEPT.DEPTNO . Is it possible can we make a join a column on which VPD polciy is applied ?
    pls any idea or thought would be appreciable..
    Thanks in advance
    Anwar

    Hi Anwar!
    I have not tried yet, but I believe that you can do this.
    However imagine the following:
    A user U1 has the right to see some values in the deptno column, but not all. This is fine, and I believe that this is what you want to achieve.
    A user U2 will see no records from the deptno column. This will impact your query, as your emp.deptno = dept.deptno part of the where clause will deliever no records.
    So you have to be careful if this condition could apply and what the impact will be on your software.
    cu
    Andreas

  • Retrieve data from a large table from ORACLE 10g

    I am working with a Microsoft Visual Studio Project that requires to retrieve data from a large table from Oracle 10g database and export the data into the hard drive.
    The problem here is that I am not able to connect to the database directly because of license issue but I can use a third party API to retrieve data from the database. This API has sufficient previllege/license permission on to the database to perform retrieval of data. So, I am not able to use DTS/SSIS or other tool to import data from the database directly connecting to it.
    Here my approach is...first retrieve the data using the API into a .net DataTable and then dump the records from it into the hard drive in a specific format (might be in Excel file/ another SQL server database).
    When I try to retrieve the data from a large table having over 13 lacs records (3-4 GB) in a data table using the visual studio project, I get an Out of memory exception.
    But is there any better way to retrieve the records chunk by chunk and do the export without loosing the state of the data in the table?
    Any help on this problem will be highly appriciated.
    Thanks in advance...
    -Jahedur Rahman
    Edited by: Jahedur on May 16, 2010 11:42 PM

    Girish...Thanks for your reply...But I am sorry for the confusions. Let me explain that...
    1."export the data into another media into the hard drive."
    What does it mean by this line i.e. another media into hard drive???
    ANS: Sorry...I just want to write the data in a file or in a table in SQL server database.
    2."I am not able to connect to the database directly because of license issue"
    huh?? I never heard this question that a user is not able to connect the db because of license. What error / message you are getting?
    ANS: My company uses a 3rd party application that uses ORACLE 10g. And my compnay is licensed to use the 3rd party application (APP+Database is a package) and did not purchased ORACLE license to use directly. So I will not connect to the database directly.
    3.I am not sure which API is you are talking about, but i am running an application of the visual studio data grid or similar kind of controls; in which i can select (select query) as many rows as i needed; no issue.
    ANS: This API is provided by the 3rd party application vendor. I can pass a query to it and it returns a datatable.
    4."better way to retrieve the records chunk by chunk and do the export without loosing the state of the data in the table?"
    ANS: As I get a system error (out of memory) when I select all rows in a datatable at a time, I wanted to retrieve the data in multiple phases.
    E.g: 1 to 20,000 records in 1st phase
    20,001 to 40,000 records in 2nd phase
    40,001 to ...... records in 3nd phase
    and so on...
    Please let me know if this does not clarify your confusions... :)
    Thanks...
    -Jahedur Rahman
    Edited by: user13114507 on May 12, 2010 11:28 PM

  • How to provide access to  v$tables in oracle 10g to user

    Hi,
    can any one suggest me how to provide access to v$tables in oracle 10g to user .
    its requried for auditor.
    PLease help me.
    regards

    user12009184 wrote:
    HI have to provide access to all V$ tables
    it required for configuration of new tool.
    ThanksYou can grant it the select catalog role to the user. It should provide all the required access to the general v$* & dba_* views.
    GRANT SELECT_CATALOG_ROLE TO USER;
    Let me know if this helps.
    Regards,
    Rizwan

  • Replication of table from Oracle 10g to sql server 2000

    Could i replicate table from Oracle 10g to sql server online. we have tables with same configuration and if any change happen in oracle 10g or sql server in that table we need to replicate that change to other database.
    What is the solution for this two way replication between sql server and Oracle 10g

    But the tutorial is saying that i will have to install Oracle database on the server already having sql server, is it client or whole database, if it is then it will acquire lot of resource.
    I want to find out that for Heterogenous Service ODBC, we need third party software for ODBC Driver of SQL SERVER for Linux and secondly if we use Transparent Gateway then what are the steps for its configuration.
    I could not find steps of configuration of Transoparent gateway, when i am trying to install Transparent gateway from Universal installer, it is not there. where do i find it , Do i need to purchase it too.

  • How to overwrite a log and bad file in external table in oracle 10g

    Hi,
    I have used external table in oracle 10g.whenever use select query in external table orace internally create one log file in specified directory,
    but this log file is growing.How can i overwrite the log file(old to replace with new).I need overwrite a log and bad file in external table.
    kindly give the solutions.
    By
    Siva

    I don't believe that is possible with the LOGFILE clause, but it may be with the BADFILE clause. Here is an excerpt from the documentation :
    The LOGFILE clause names the file that contains messages generated by the external tables utility while it was accessing data in the datafile. If a log file already exists by the same name, the access driver reopens that log file and appends new log information to the end. This is different from bad files and discard files, which overwrite any existing file. NOLOGFILE is used to prevent creation of a log file.
    If you specify LOGFILE, you must specify a filename or you will receive an error.
    If neither LOGFILE nor NOLOGFILE is specified, the default is to create a log file. The name of the file will be the table name followed by _%p and it will have an extension of .log.

  • How to migrate a table from ORACLE 10g to 8i

    have table named 'liuxg_tab_01' in 10g.
    This morning I exported this table using 'exp' and then tried to imp it into 8i, I failed.
    After a while, I created a database link named 'ctf' in 8i which connected to 10g. I issued 'create table test as selct * from liuxg_tab_01@ctf',it returns 'ORA-01723'.
    Then I extraced the DDL of 'liuxg_tab_01' from 10g with QUEST TAOD, it's:
    CREATE TABLE LIUXG_TAB_01
    OWNER VARCHAR2(30 BYTE),
    OBJECT_NAME VARCHAR2(30 BYTE),
    SUBOBJECT_NAME VARCHAR2(30 BYTE),
    OBJECT_ID NUMBER,
    DATA_OBJECT_ID NUMBER,
    OBJECT_TYPE VARCHAR2(19 BYTE),
    CREATED DATE,
    LAST_DDL_TIME DATE,
    TIMESTAMP VARCHAR2(19 BYTE),
    STATUS VARCHAR2(7 BYTE),
    TEMPORARY VARCHAR2(1 BYTE),
    GENERATED VARCHAR2(1 BYTE),
    SECONDARY VARCHAR2(1 BYTE)
    But I can not create a table using the upper DDL in 8i if I do not wipe off those "BYTES".
    After creation of the table using the upper DDL without those 'BYTES', I sucessfully executed 'insert into LIUXG_TAB_01 select * from liuxg_tab_01@ctf'.
    Anyone has a better method to move a table from ORACLE 10g to 8i?

    1) The particular version of 8i and 10g in use here would be useful. I'm not sure that Oracle supports database links between any version of 8i and any version of 10g, though, so you're probably lucky that it worked as well as it did.
    10g 10.1.0.3.0 and 8i 8.1.7.0.0
    2) What version of the export utility did you use? You would need to use the 8i version to generate the dump file to have any chance of working, not the 10g verion.
    I use the 'exp' provided with 10g 10.1.0.3.0 and 'imp' with 8i 8.1.7.0.0. I have tried to export data directly from 10g 10.1.0.3.0 using 'exp' provided with 8i 8.1.7.0.0. Failed.
    3) Why? Since 8i is desupported, there isn't a lot of call for tools to move data from supported releases to unsupported releases.
    We have an 8i DB which is still porivding insentive services. We just wanna migrate some tales from 10g to it.
    FYI, NLS_LENGTH_SEMANTICS was introduced in 9i, so it's no suprise that 8i objected to the BYTE keyword in the DDL.
    What's FYI :P
    Another option would be to generate a CSV file of the data from 10g and use SQL*Loader to load it into 8i. Not sure this would be any easier, though.
    Justin
    Message was edited by:
    user510846

  • How to read/write .CSV file into CLOB column in a table of Oracle 10g

    I have a requirement which is nothing but a table has two column
    create table emp_data (empid number, report clob)
    Here REPORT column is CLOB data type which used to load the data from the .csv file.
    The requirement here is
    1) How to load data from .CSV file into CLOB column along with empid using DBMS_lob utility
    2) How to read report columns which should return all the columns present in the .CSV file (dynamically because every csv file may have different number of columns) along with the primariy key empid).
    eg: empid report_field1 report_field2
    1 x y
    Any help would be appreciated.

    If I understand you right, you want each row in your table to contain an emp_id and the complete text of a multi-record .csv file.
    It's not clear how you relate emp_id to the appropriate file to be read. Is the emp_id stored in the csv file?
    To read the file, you can use functions from [UTL_FILE|http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/u_file.htm#BABGGEDF] (as long as the file is in a directory accessible to the Oracle server):
    declare
        lt_report_clob CLOB;
        l_max_line_length integer := 1024;   -- set as high as the longest line in your file
        l_infile UTL_FILE.file_type;
        l_buffer varchar2(1024);
        l_emp_id report_table.emp_id%type := 123; -- not clear where emp_id comes from
        l_filename varchar2(200) := 'my_file_name.csv';   -- get this from somewhere
    begin
       -- open the file; we assume an Oracle directory has already been created
        l_infile := utl_file.fopen('CSV_DIRECTORY', l_filename, 'r', l_max_line_length);
        -- initialise the empty clob
        dbms_lob.createtemporary(lt_report_clob, TRUE, DBMS_LOB.session);
        loop
          begin
             utl_file.get_line(l_infile, l_buffer);
             dbms_lob.append(lt_report_clob, l_buffer);
          exception
             when no_data_found then
                 exit;
          end;
        end loop;
        insert into report_table (emp_id, report)
        values (l_emp_id, lt_report_clob);
        -- free the temporary lob
        dbms_lob.freetemporary(lt_report_clob);
       -- close the file
       UTL_FILE.fclose(l_infile);
    end;This simple line-by-line approach is easy to understand, and gives you an opportunity (if you want) to take each line in the file and transform it (for example, you could transform it into a nested table, or into XML). However it can be rather slow if there are many records in the csv file - the lob_append operation is not particularly efficient. I was able to improve the efficiency by caching the lines in a VARCHAR2 up to a maximum cache size, and only then appending to the LOB - see [three posts on my blog|http://preferisco.blogspot.com/search/label/lob].
    There is at least one other possibility:
    - you could use [DBMS_LOB.loadclobfromfile|http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_lob.htm#i998978]. I've not tried this before myself, but I think the procedure is described [here in the 9i docs|http://download.oracle.com/docs/cd/B10501_01/appdev.920/a96591/adl12bfl.htm#879711]. This is likely to be faster than UTL_FILE (because it is all happening in the underlying DBMS_LOB package, possibly in a native way).
    That's all for now. I haven't yet answered your question on how to report data back out of the CLOB. I would like to know how you associate employees with files; what happens if there is > 1 file per employee, etc.
    HTH
    Regards Nigel
    Edited by: nthomas on Mar 2, 2009 11:22 AM - don't forget to fclose the file...

  • Using Clob with TopLink 9.0.4.5 and Oracle 10g RAC

    I am trying to store an XML file in a Clob type field of a DB table using TopLink 9.0.4.5 and Oracle 10g RAC and need some guidance about how to do it. I got some directions to start it with the Tip "How-To: Map Large Objects (LOBs) to Oracle Databases with OracleAS TopLink" but still need some more helps.
    When using the Oracle JDBC OCI driver, the tip gives the code block for a Clob field:
    DirectToField scriptMapping = new DirectToField();
    scriptMapping.setAttributeName("script");
    scriptMapping.setFieldName("IMAGE.SCRIPT");
    descriptor.addMapping(scriptMapping);
    As I understand, TopLink creates instances of the Descriptor class at run time for each of the descriptor files and stores them in a database session, where is the proper place (in SessionEvent of TopLinkSessionEventHandler?) for me to get a reference to such an instance of my Descriptor class in Java code so that I can add the above mentioned additional Mapping? Are the above String values of "script" and "IMAGE.SCRIPT" predefined in TopLink API? Can I accomplish the same thing just using the TopLink Workbench tool instead? If yes, please advise the detailed steps to do so.
    The tip also states to call the following code in case of using Clob:
    DatabaseLogin login = session.getLogin();
    login.useStringBinding();
    Should the above 2 lines of code be called after the following lines of code?
    SessionManager sessionManager = SessionManager.getManager();
    Server serverSession = (Server)sessionManager.getSession("MY_SESSION_NAME");
    Besides the above extra coding for the Session and Descriptor Mapping, is there any special handling in between Data model and DB table mapping? Can I map a Java String type to a DB Clob field using the Direct-to-field mapping?
    Appreciate any help.

    Never mind ....... I had already figured it out .....

  • Already existing tables in oracle 10g problem

    Hi, i am new to oracle and just installed oracle 10g, my porblem is that when i ran the query i got an error.
    SQL> select *
    2 from emp;
    from emp
    ERROR at line 2:
    ORA-00942: table or view does not exist
    As emp table already exist in database but it does not show result. please help me. Thanks.

    i have heared form someone that i should copy some text (from files) or some files which resides in bin folder (i don't know the exact path) in the sql console to access existing tables. is that ture?Not sure what that means... to access existing tables, or to create new ones you have to use Sql commands (or some graphic stuff).
    What about reading some documentation ?
    System user is a DBA, and can possibly read any tables, but most probably is not the owner of emp table. To know it you can do
    SQL> select owner from dba_tables where table_name='EMP';
    then connect to that user, or, as system user, do
    SQL> select * from <owner>.emp;

  • Viewing Tables in Oracle 10g Enterprise Manager

    Hello,
    We are running Oracle 10g on a Linux Red Hat platform. We have started the dbconsole listeners to start using Enterprise Manager. The problem we are encountering is that tables that are in our schema are not showing up in Enterprise Manager. We have checked the tables using OEM and they are appearing there normally. The tables not showing were created from an object type. We are able to use DML, DDL on these tables using SQL, iSQLPlus. We appreciate any ideas. Thanks.

    Please clarify how did you check the tables in 10g using EM dbconsole.
    Please post some screen capture of you login using sqlplus and shown the table is there for example,
    %sqlplus test/test1
    SQL*Plus: Release 10.1.0.2.0 - Production on Wed Jun 4 15:39:22 2008
    Copyright (c) 1982, 2004, Oracle.  All rights reserved.
    Connected to:
    Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - 64bit Production
    With the Partitioning, OLAP and Data Mining options
    TEST@rman>select table_name from user_tables where table_name='A1';
    TABLE_NAME
    A1

  • Partitioning of table in oracle 10g - How to Add

    Hello Friends ,
    Hope you are all fine and doing great.
    By the way - I have a quick question on oracle 10g Partitioning of tables...
    I have a table with partition as stated below ..
    CREATE TABLE X_ACC_ASSETS_GPC_AGG
    X_ACC_ASSETS_GPC_AGG_RK NUMBER(10) NOT NULL,
    X_AS_OF_DT DATE NOT NULL,
    ACCOUNT_RK NUMBER(10) NOT NULL,
    X_UNIV_ACCOUNT_ID NUMBER(10),
    ACCOUNT_ID VARCHAR2(10 BYTE),
    X_ASSET_TYPE_CD VARCHAR2(6 BYTE),
    X_AUC_AMT NUMBER(18,5),
    X_FIRM_AMT NUMBER(18,5),
    X_ADJ_SRCE_AMT NUMBER(18,5),
    PROCESSED_DTTM DATE
    )PARTITION BY RANGE (X_AS_OF_DT)
    PARTITION P200712 VALUES LESS THAN (TO_DATE(' 2008-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    NOLOGGING
    NOCOMPRESS
    TABLESPACE KAW_DATA
    PCTFREE 10
    INITRANS 1
    MAXTRANS 255
    STORAGE (
    INITIAL 64K
    MINEXTENTS 1
    MAXEXTENTS 2147483645
    BUFFER_POOL DEFAULT
    PARTITION P201112
    NOLOGGING
    NOCOMPRESS
    TABLESPACE KAW_DATA
    PCTFREE 10
    INITRANS 2
    MAXTRANS 255
    STORAGE (
    INITIAL 64K
    MINEXTENTS 1
    MAXEXTENTS 2147483645
    BUFFER_POOL DEFAULT
    PARTITION PMAX
    NOLOGGING
    NOCOMPRESS
    TABLESPACE KAW_DATA
    PCTFREE 10
    INITRANS 2
    MAXTRANS 255
    STORAGE (
    INITIAL 64K
    MINEXTENTS 1
    MAXEXTENTS 2147483645
    BUFFER_POOL DEFAULT
    )NOPARALLEL;
    My question is :
    1) How to add a partition say P201201 ..
    Since I have already stated PARTITION PMAX can I still add partition?
    2) Can I add partition even though the table has data ?
    ==========================
    I tried to add partition ..say
    ALTER TABLE X_ACC ADD PARTITION P201201 VALUES LESS THAN
    (TO_DATE(' 2012-01-01 00:00:00', 'SYYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN'))
    NOLOGGING
    NOCOMPRESS
    TABLESPACE KAW_DATA
    PCTFREE 10
    INITRANS 1
    MAXTRANS 255
    STORAGE (
    INITIAL 64K
    MINEXTENTS 1
    MAXEXTENTS 2147483645
    BUFFER_POOL DEFAULT
    but getting the error ..
    "partition bound must collate higher than that of the last partition"
    Thanks/kumar

    You have partitions
    200712
    200812
    200912
    201012
    201112
    PMAX.
    so your condition for partition p201112 is '201012-01-01' to '201112-01-01' i.e the values between these two dates will be in partition p201112. and then everything else will be in PMAX. So now you are splitting your pmax.
    alter table X_acc split partition pmax at ( to_date('2012-01-01 00:00:00','YYYY-MM-DD HH24:MI:SS', 'NLS_CALENDAR=GREGORIAN') )
    into (partition p201201, partition pmax); The condition you have to change. I just showed as an example. It could be the date range between two dates or it could be greater than a date value. It is upto how you want this new partition.
    how to add partition between two partition
    Edited by: pransuj on Mar 25, 2011 11:13 AM
    Edited by: pransuj on Mar 25, 2011 11:14 AM

  • Error accessing table on Oracle 10g Express Edition

    I am unable to access tables uploaded after Oracle 10G express edition installation.
    The error message is ""ORA-00942: table or view does not exist"
    Meanwhile, the table is in existence when viewed via object browser.
    Pls can anybody help out.

    Hi;
    Which user you try to query? Table under which schema?
    You can query as follows:
    SELECT
    TABLE_NAME
    FROM
    ALL_TABLES
    WHERE
    TABLE_NAME LIKE '%xxx%'
    ORDER
    BY TABLE_NAME;
    Regard
    Helios

Maybe you are looking for

  • Error message when trying to install itunes 9

    I checked already to see if this was answered earlier and it isnt. so. When i open the itunes installer and right after it prepares to install i get the message "invalid drive:F:/" and then itunes installer tells me that it cannot complete the instal

  • Controlling multiple workitem in purchase Requisition

    Guys,           I need some suggestions regarding the controlling of multiple workitem for Purchase requisition. Our client have a PR release wf and when a PR is saved a workitem is sent to approvers inbox. Within a timeframe say (15 sec) any changes

  • Two Message Windows Open in Mail

    Since the Mobile Me transition my Apple Mail opens twice. Two identical message viewers and two icons in the dock. My work email is also being duplicated, not just the Mobile Me stuff. I've tried playing around with Mail preferences, but to no avail.

  • Missing App store from my ipad after ios5 installation

    I seem to be missing my app store icon from my ipdad after upgrade to Ios5, how do I get it back.  I'm unable to dowload apps directly to my iPad

  • Is Windows7 compatible with Media Manager

    Is Windows7 compatible with Media Manager -  i'm unable to view my media on the tv