Out-of-Line Storage: an Intermediate Table is not created

Hi
I'm trying to use the "Out-of-Line Storage: Using an Intermediate Table to Store the List of References" sample from "Oracle XML DB Developer’s Guide".
Here are my schemas:
oebs_content_organization.xsd
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:oebs="http://www.rosbank.ru/oebs"
targetNamespace="http://www.rosbank.ru/oebs/content/organization"
xmlns:appsxx_organization="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/appsxx_organization_v"
elementFormDefault="qualified" xmlns:xdb="http://xmlns.oracle.com/xdb"
xdb:storeVarrayAsTable="true">
<xsd:import schemaLocation="oebs.xsd" namespace="http://www.rosbank.ru/oebs"/>
<xsd:import namespace="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/appsxx_organization_v"
schemaLocation="AppsXx_Organization_V.xsd"/>
<xsd:complexType name="contentOrganizationType" xdb:SQLType="CONTENT_ORGANIZATION_T">
<xsd:complexContent>
<xsd:extension base="oebs:contentAbstractType">
<xsd:sequence minOccurs="1" maxOccurs="1">
<xsd:element name="organization" minOccurs="1" maxOccurs="unbounded" xdb:SQLInline="false"
xdb:defaultTable="ORGANIZATION"
type="appsxx_organization:AppsXx_Organization_V"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
</xsd:schema>
oebs_content_organization_element.xsd
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:organization="http://www.rosbank.ru/oebs/content/organization"
targetNamespace="http://www.rosbank.ru/oebs/content/organization"
xmlns:oebs="http://www.rosbank.ru/oebs" elementFormDefault="qualified"
xmlns:xdb="http://xmlns.oracle.com/xdb" xdb:storeVarrayAsTable="true">
<xsd:include schemaLocation="oebs_content_organization.xsd"/>
<xsd:import schemaLocation="oebs.xsd" namespace="http://www.rosbank.ru/oebs"/>
<xsd:element name="content" type="organization:contentOrganizationType"
substitutionGroup="oebs:contentAbstract" xdb:SQLName="CONTENT_ORGANIZATION"
xdb:defaultTable=""/>
</xsd:schema>
I registered them.
But I can't find an Intermediate Table which have to keep the List of References to the "organization" element because next select doesn't return any result:
SELECT * FROM USER_NESTED_TABLES
Can anybody give me suggestion where these references are stored and how to index them?
Thanks
Dmitry

You appear to hitting bug 5979468 which is fixed in 11g..
With the heavy usage of inheritance in your XML Schemas I would VERY STRONGLY recommend that you upgrade to 11g immediately...
SQL*Plus: Release 11.1.0.6.0 - Production on Wed May 14 22:08:49 2008
Copyright (c) 1982, 2007, Oracle.  All rights reserved.
SQL> spool testcase.log
SQL> --
SQL> connect sys/ as sysdba
Enter password:
Connected.
SQL> --
SQL> set define on
SQL> set timing on
SQL> --
SQL> define USERNAME = ROSBANK
SQL> --
SQL> def PASSWORD = ROSBANK
SQL> --
SQL> def USER_TABLESPACE = USERS
SQL> --
SQL> def TEMP_TABLESPACE = TEMP
SQL> --
SQL> def DIRECTORY_PATH = &1
SQL> --
SQL> drop user &USERNAME cascade
  2  /
old   1: drop user &USERNAME cascade
new   1: drop user ROSBANK cascade
User dropped.
Elapsed: 00:00:00.51
SQL> grant create any directory, drop any directory, connect, resource, alter session, create view to &USERNAME identified by &PASSW
ORD
  2  /
old   1: grant create any directory, drop any directory, connect, resource, alter session, create view to &USERNAME identified by &P
ASSWORD
new   1: grant create any directory, drop any directory, connect, resource, alter session, create view to ROSBANK identified by ROSB
ANK
Grant succeeded.
Elapsed: 00:00:00.20
SQL> alter user &USERNAME default tablespace &USER_TABLESPACE temporary tablespace &TEMP_TABLESPACE
  2  /
old   1: alter user &USERNAME default tablespace &USER_TABLESPACE temporary tablespace &TEMP_TABLESPACE
new   1: alter user ROSBANK default tablespace USERS temporary tablespace TEMP
User altered.
Elapsed: 00:00:00.04
SQL> connect &USERNAME/&PASSWORD
Connected.
SQL> --
SQL> alter session set events ='19027 trace name context forever, level 0x800'
  2  /
Session altered.
Elapsed: 00:00:00.00
SQL> call xdb_utilities.createHomeFolder()
  2  /
Call completed.
Elapsed: 00:00:00.21
SQL> create or replace directory XMLDIR as '&DIRECTORY_PATH'
  2  /
old   1: create or replace directory XMLDIR as '&DIRECTORY_PATH'
new   1: create or replace directory XMLDIR as 'C:\xdb\customers\ROSBANK'
Directory created.
Elapsed: 00:00:00.56
SQL> declare
  2    JDBC XMLType := XMLType(bfilename('XMLDIR','JDBCASI.xsd'),nls_charset_id('AL32UTF8'));
  3    APPS XMLType := XMLType(bfilename('XMLDIR','AppsXx_Organization_V.xsd'),nls_charset_id('AL32UTF8'));
  4    OEBS XMLType := XMLType(bfilename('XMLDIR','OEBS.xsd'),nls_charset_id('AL32UTF8'));
  5  begin
  6    dbms_xmlschema.registerSchema
  7    (
  8        schemaurl => 'JDBCASI.xsd'
  9       ,schemadoc => JDBC
10       ,local     => TRUE
11       ,genBean   => false
12       ,genTypes  => TRUE
13       ,genTables => TRUE
14       ,ENABLEHIERARCHY => DBMS_XMLSCHEMA.ENABLE_HIERARCHY_NONE
15    );
16    dbms_xmlschema.registerSchema
17    (
18        schemaurl => 'AppsXx_Organization_V.xsd'
19       ,schemadoc => Apps
20       ,local     => TRUE
21       ,genBean   => false
22       ,genTypes  => TRUE
23       ,genTables => TRUE
24       ,ENABLEHIERARCHY => DBMS_XMLSCHEMA.ENABLE_HIERARCHY_NONE
25    );
26
27    dbms_xmlschema.registerSchema
28    (
29        schemaurl => 'oebs.xsd'
30       ,schemadoc => OEBS
31       ,local     => TRUE
32       ,genBean   => false
33       ,genTypes  => TRUE
34       ,genTables => TRUE
35       ,ENABLEHIERARCHY => DBMS_XMLSCHEMA.ENABLE_HIERARCHY_NONE
36    );
37  end;
38  /
PL/SQL procedure successfully completed.
Elapsed: 00:01:13.70
SQL> declare
  2    xmlSchema XMLType := XMLType(
  3  '<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:oebs="http://www.rosbank.ru/oebs" targetNamespace="http://www.r
osbank.ru/oebs/content/organization" xmlns:appsxx_organization="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/appsxx_organizatio
n_v" elementFormDefault="qualified" xmlns:xdb="http://xmlns.oracle.com/xdb" xdb:storeVarrayAsTable="true">
  4          <xsd:import schemaLocation="oebs.xsd" namespace="http://www.rosbank.ru/oebs"/>
  5          <xsd:import namespace="http://www.ibm.com/xmlns/prod/websphere/j2ca/jdbc/appsxx_organization_v" schemaLocation="AppsXx_
Organization_V.xsd"/>
  6          <xsd:complexType name="contentOrganizationType" xdb:SQLType="CONTENT_ORGANIZATION_T">
  7                  <xsd:complexContent>
  8                          <xsd:extension base="oebs:contentAbstractType">
  9                                  <xsd:sequence minOccurs="1" maxOccurs="1">
10                                          <xsd:element name="organization" minOccurs="1" maxOccurs="unbounded" xdb:SQLInline="fal
se" xdb:defaultTable="ORGANIZATION" type="appsxx_organization:AppsXx_Organization_V"/>
11                                  </xsd:sequence>
12                          </xsd:extension>
13                  </xsd:complexContent>
14          </xsd:complexType>
15  </xsd:schema>');
16  begin
17    DBMS_XMLSCHEMA.registerSchema(SCHEMAURL => 'oebs_content_organization.xsd', SCHEMADOC => xmlSchema, GENTABLES => TRUE);
18  end;
19  /
PL/SQL procedure successfully completed.
Elapsed: 00:00:12.51
SQL> set pages 0 lines 250
SQL> --
SQL> column table_name format A40
SQL> column column_name format A40
SQL> column parent_table_name format A40
SQL> column parent_table_column format A40
SQL> --
SQL> select table_name
  2    from user_xml_tables
  3  /
OEBS
CONTENT
ORGANIZATION
Elapsed: 00:00:29.40
SQL> select table_name, parent_table_name, parent_table_column
  2    from user_nested_tables
  3  /
SYS_NTjt3LMhVVSJ6XnKEY8x7idQ==           CONTENT                                  TREAT("XMLDATA" AS "CONTENT_ORGANIZATION
                                                                                  _T")."organization"
Elapsed: 00:00:00.00
SQL> select table_name, column_name
  2    from user_refs
  3  /
SYS_NTjt3LMhVVSJ6XnKEY8x7idQ==           COLUMN_VALUE
OEBS                                     "XMLDATA"."contentAbstract"
Elapsed: 00:00:00.67
SQL>
SQL>
SQL>

Similar Messages

  • Table JAVA$CLASS$MD5$TABLE is not created by loadjava

    When loading a class using loadjava, the table JAVA$CLASS$MD5$TABLE is not created (in the schema where the class is loaded) by the loadjava tool although it should do this according to the doc. Where is this table located?
    The class loads successfully and is skipped when loading a second time. The force option is not used.
    Version is: Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit

    IN order for a registered schema to be available to other users the schema must be registered as a GLOBAL, rather than a LOCAL Schema. This is controlled by the third agument passed to registerSChema, and the default is local. Note that you will also need to explicity grant appropriate permissions on any tables created by the schema registration process to other users who will be loading or reading data from these tables.

  • Seam (EJB3/JSF) App Deploys - but tables are not created, populated

    Please let me know if you've run across this or have an inkling of an idea of what is going on here.
    Description: I have created the JDBC Data Source and this deploys successfully. The JNDI Name for this data source is: "seam-jee5-ds".
    I am using this JDNI name as the data source in my persistence.xml for the application. This data source is found when the application deploys. The data source itself is an embedded HSQLDB database, but I have also tried this with H2 and the result is the same.
    The application works, I can open the page...but anytime there is a transaction with the database, the transaction fails. The error is that it can't find the table to query from, and fails w/ this exception:
    javax.el.ELException: javax.ejb.EJBTransactionRolledbackException: EJB Exception: ; nested exception is: javax.persistence.PersistenceException: org.h
    ibernate.exception.SQLGrammarException: could not execute query; nested exception is: javax.persistence.PersistenceException: org.hibernate.exception.
    SQLGrammarException: could not execute query
    +Caused by: java.sql.SQLException: Table not found in statement [select user0_.username as username2_, user0_.name as name2_, user0_.password as passwo+
    +rd2_ from Customer user0_ where user0_.username=? and user0_.password=?]+
    at org.hsqldb.jdbc.Util.throwError(Unknown Source)
    The EJBs are recognized/discovered; example:
    Aug 15, 2009 7:35:29 PM org.hibernate.cfg.annotations.EntityBinder bindTable
    INFO: Bind entity org.jboss.seam.example.booking.Booking on table Booking
    The persistence unit is configured:
    Aug 15, 2009 7:35:29 PM org.hibernate.ejb.Ejb3Configuration configure
    +INFO: Processing PersistenceUnitInfo [+
    name: bookingDatabase
    +...]+
    Problem: When I then check the database (HSQLDB or H2), none of the tables that should be created and populated as a result of the EJBs are there.
    The only two issues/warnings that I see are:
    Aug 15, 2009 7:35:29 PM org.hibernate.impl.SessionFactoryObjectFactory addInstance
    INFO: Not binding factory to JNDI, no JNDI name configured+
    Aug 15, 2009 7:35:29 PM org.hibernate.util.NamingHelper getInitialContext+
    INFO: JNDI InitialContext properties:{}+
    Aug 15, 2009 7:35:32 PM com.sun.faces.config.ConfigureListener contextInitialized
    INFO: Initializing Sun's JavaServer Faces implementation (1.2_03-b04-FCS) for context '/seam-jee5-booking'
    Aug 15, 2009 7:35:34 PM org.jboss.seam.servlet.SeamListener contextInitialized
    INFO: Welcome to Seam 2.1.2
    Aug 15, 2009 7:35:34 PM org.jboss.seam.util.Resources getRealFile
    WARNING: Unable to determine real path from servlet context for "/WEB-INF/classes" path does not exist.
    Aug 15, 2009 7:35:34 PM org.jboss.seam.util.Resources getRealFile
    WARNING: Unable to determine real path from servlet context for "/WEB-INF/dev" path does not exist.
    Stack: JDK 1.6_011; WebLogic 10.3.1 (11g); Seam 2.1.2; Windows XP; HSQLDB 1.8
    Any help you can provide would be much appreciated.
    The app's persistence.xml:
    <?xml version="1.0" encoding="UTF-8"?>
    <persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
    version="1.0">
    <persistence-unit name="bookingDatabase">
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
    <jta-data-source>seam-jee5-ds</jta-data-source>
    <properties>
         <!--<property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/>-->
         <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
         <property name="hibernate.transaction.manager_lookup_class"
              value="org.hibernate.transaction.WeblogicTransactionManagerLookup"/>
    </properties>
    </persistence-unit>
    </persistence>
    Edited by: user447661 on Aug 17, 2009 9:41 AM
    Edited by: user447661 on Aug 17, 2009 9:45 AM
    Edited by: user447661 on Aug 17, 2009 9:47 AM

    Nevermind, the issue was that my persistence.xml did not contain the following property:
    <property name="hibernate.hbm2ddl.auto" value="create-drop"/>
    Therefore, the tables were not being created upon deployment.
    Still, I would expect to see entity beans listed in the WebLogic console.

  • Passivation Tables (PS_TXN) Not Created on First Passivation Attempt

    Fusion Middleware Version: 11.1.1.5
    WebLogic: 10.3.5.0
    JDeveloper Build: Build JDEVADF_11.1.1.5.0_GENERIC_110409.0025.6013
    Project: Custom WebCenter Portal Application integrated with custom ADF task flows.
    Hi
    We are trying to use the jbo.server.internal_connection property in the Business Components layer to change the database to which passivated application module data is written (PS_TXN table).
    We have set the property to a valid data source using the JNDI name. The entry in the bc4j.xcfg file is as follows:
    <Database jbo.locking.mode="optimistic" jbo.server.internal_connection="jdbc/mds/CustomPortalDS"/>
    After making the change, when I run the application through my integrated WLS instance within JDeveloper, the first instance to passivate its data results in the necessary passivation database objects being created in the target instance (PS_TXN, PS_TXN_SEQ & PCOLL_CONTROL).
    If however we then remove those objects from the target instance and run the application on our standalong WebLogic server we get an error accessing the application because the BC framework cannot find the PS_TXN table to write to. The following error appears in the log files:
    Caused by: oracle.jbo.PCollException: JBO-28030: Could not insert row into table PS_TXN, collection id 10, persistent id 1
         at oracle.jbo.PCollException.throwException(PCollException.java:36)
         at oracle.jbo.pcoll.OraclePersistManager.insert(OraclePersistManager.java:1901)
         at oracle.jbo.pcoll.PCollNode.passivateElem(PCollNode.java:564)
         at oracle.jbo.pcoll.PCollNode.passivate(PCollNode.java:688)
         at oracle.jbo.pcoll.PCollNode.passivateBranch(PCollNode.java:647)
         at oracle.jbo.pcoll.PCollection.passivate(PCollection.java:465)
         at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:294)
         at oracle.jbo.server.DBSerializer.passivateRootAM(DBSerializer.java:267)
         at oracle.jbo.server.ApplicationModuleImpl.passivateStateInternal(ApplicationModuleImpl.java:5975)
         at oracle.jbo.server.ApplicationModuleImpl.passivateState(ApplicationModuleImpl.java:5835)
         at oracle.jbo.server.ApplicationModuleImpl.passivateStateForUndo(ApplicationModuleImpl.java:8857)
         at oracle.adf.model.bc4j.DCJboDataControl.createSavepoint(DCJboDataControl.java:3180)
         at oracle.adf.model.dcframe.LocalTransactionHandler.createSavepoint(LocalTransactionHandler.java:75)
         at oracle.adf.model.dcframe.DataControlFrameImpl.createSavepoint(DataControlFrameImpl.java:797)
         at oracle.adfinternal.controller.util.model.DCFrameImpl.createSavepoint(DCFrameImpl.java:31)
         at oracle.adfinternal.controller.activity.TaskFlowCallActivityLogic.initializeModel(TaskFlowCallActivityLogic.java:1015)
         at oracle.adfinternal.controller.activity.TaskFlowCallActivityLogic.enterTaskFlow(TaskFlowCallActivityLogic.java:615)
         at oracle.adfinternal.controller.activity.TaskFlowCallActivityLogic.invokeLocalTaskFlow(TaskFlowCallActivityLogic.java:337)
         at oracle.adfinternal.controller.activity.TaskFlowCallActivityLogic.invokeTaskFlow(TaskFlowCallActivityLogic.java:229)
         at oracle.adfinternal.controller.engine.ControlFlowEngine.invokeTaskFlow(ControlFlowEngine.java:217)
         at oracle.adfinternal.controller.state.ChildViewPortContextImpl.invokeTaskFlow(ChildViewPortContextImpl.java:104)
         at oracle.adfinternal.controller.state.ControllerState.createChildViewPort(ControllerState.java:1380)
         at oracle.adfinternal.controller.ControllerContextImpl.createChildViewPort(ControllerContextImpl.java:78)
         at oracle.adf.controller.internal.binding.DCTaskFlowBinding.createRegionViewPortContext(DCTaskFlowBinding.java:440)
         at oracle.adf.controller.internal.binding.DCTaskFlowBinding.getViewPort(DCTaskFlowBinding.java:358)
         at oracle.adf.controller.internal.binding.TaskFlowRegionModel.doProcessBeginRegion(TaskFlowRegionModel.java:164)
         at oracle.adf.controller.internal.binding.TaskFlowRegionModel.processBeginRegion(TaskFlowRegionModel.java:112)
         at oracle.adf.view.rich.component.fragment.UIXRegion$RegionContextChange.doChangeImpl(UIXRegion.java:1199)
         at oracle.adf.view.rich.context.DoableContextChange.doChange(DoableContextChange.java:91)
         at oracle.adf.view.rich.component.fragment.UIXRegion._beginInterruptibleRegion(UIXRegion.java:693)
         at oracle.adf.view.rich.component.fragment.UIXRegion.processRegion(UIXRegion.java:498)
         at oracle.adfinternal.view.faces.taglib.region.RegionTag.doStartTag(RegionTag.java:127)
         at oracle.jsp.runtime.tree.OracleJspBodyTagNode.executeHandler(OracleJspBodyTagNode.java:50)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspClassicTagNode.evalBody(OracleJspClassicTagNode.java:87)
         at oracle.jsp.runtime.tree.OracleJspBodyTagNode.executeHandler(OracleJspBodyTagNode.java:58)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspClassicTagNode.evalBody(OracleJspClassicTagNode.java:87)
         at oracle.jsp.runtime.tree.OracleJspBodyTagNode.executeHandler(OracleJspBodyTagNode.java:58)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspClassicTagNode.evalBody(OracleJspClassicTagNode.java:87)
         at oracle.jsp.runtime.tree.OracleJspBodyTagNode.executeHandler(OracleJspBodyTagNode.java:58)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspClassicTagNode.evalBody(OracleJspClassicTagNode.java:87)
         at oracle.jsp.runtime.tree.OracleJspBodyTagNode.executeHandler(OracleJspBodyTagNode.java:58)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspClassicTagNode.evalBody(OracleJspClassicTagNode.java:87)
         at oracle.jsp.runtime.tree.OracleJspBodyTagNode.executeHandler(OracleJspBodyTagNode.java:58)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspClassicTagNode.evalBody(OracleJspClassicTagNode.java:87)
         at oracle.jsp.runtime.tree.OracleJspBodyTagNode.executeHandler(OracleJspBodyTagNode.java:58)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspClassicTagNode.evalBody(OracleJspClassicTagNode.java:87)
         at oracle.jsp.runtime.tree.OracleJspBodyTagNode.executeHandler(OracleJspBodyTagNode.java:58)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspClassicTagNode.evalBody(OracleJspClassicTagNode.java:87)
         at oracle.jsp.runtime.tree.OracleJspIterationTagNode.executeHandler(OracleJspIterationTagNode.java:45)
         at oracle.jsp.runtime.tree.OracleJspCustomTagNode.execute(OracleJspCustomTagNode.java:261)
         at oracle.jsp.runtime.tree.OracleJspNode.execute(OracleJspNode.java:89)
         at oracle.jsp.runtimev2.ShortCutServlet._jspService(ShortCutServlet.java:89)
         at oracle.jsp.runtime.OracleJspBase.service(OracleJspBase.java:29)
         at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:422)
         at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:802)
         at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:726)
         ... 122 more
    Caused by: java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:457)
         at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:405)
         at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:889)
         at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:476)
         at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:204)
         at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:540)
         at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:217)
         at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1079)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1466)
         at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3752)
         at oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:3937)
         at oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWrapper.java:1535)
         at weblogic.jdbc.wrapper.PreparedStatement.execute(PreparedStatement.java:99)
         at oracle.jbo.pcoll.OraclePersistManager.insert(OraclePersistManager.java:1887)
         ... 184 more
    My understanding is that it is the adfbc_create_statesnapshottables.sql script that creates these database objects. The description in the file is as follows:
    "By default, BC4J will create these objects in the schema of the internal database user the first time that the application makes a passivation request. This script is intended for advanced users who require more control over the creation and naming of these objects."
    My question then is why is this not happening when the application is run on the standalone WebLogic server but is happening when run on the integrated JDevelopers WLS?
    Any help greatly appreciated.

    Hi
    Thanks for your reply.
    We have already considered the points in the referenced links.
    The correct privileges exist for the schema used by the data source and we don't see any messages other than ORA-00942.
    We have run a 'Finest' trace on package oracle.jbo.* and there is no further information. I have pasted the diagnostic output from the first passivation attempt below:
    [SRC_METHOD: passivate] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.server.Serializer] <AM MomVer="0">[[
    <<PASSIVATION DATA FOLLOWS NOT PASTED INTO THREAD>>
    </AM>
    [SRC_METHOD: insert] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.pcoll.OraclePersistManager] [2226] **insert** id=1, parid=-1, collid=10, keyArr.len=-1, cont.len=981
    [SRC_METHOD: insert] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.pcoll.OraclePersistManager] [2227] stmt: insert into "PS_TXN" values (:1, :2, :3, :4, sysdate)
    [SRC_METHOD: getInternalConnection] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.server.DBTransactionImpl] [2228] Getting a connection for internal use...
    [SRC_METHOD: getInternalConnection] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.server.DBTransactionImpl] [2229] Creating internal connection...
    [ADF_MESSAGE_ACTION_NAME: Establish database connection] [APP: XXJLPPartnerLinkApp#V2.0] [ADF_MESSAGE_STATUS: begin] [ADF_MESSAGE_ACTION_DESC: ] [URI: /jlpportal/faces/home] [ADF_MESSAGE_CONTEXT_DATA: Is datasource?=true;#;Connection identifier=weblogic.jdbc.common.internal.RmiDataSource@2b002b00] Establish database connection
    [SRC_METHOD: establishNewConnection] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.server.DBTransactionImpl] [2230] Trying connection: DataSource='weblogic.jdbc.common.internal.RmiDataSource@2b002b00'...
    [ADF_MESSAGE_ACTION_NAME: Establish database connection] [APP: XXJLPPartnerLinkApp#V2.0] [ADF_MESSAGE_STATUS: add_context_data] [URI: /jlpportal/faces/home] [ADF_MESSAGE_CONTEXT_DATA: Success?=true] Establish database connection
    [SRC_METHOD: establishNewConnection] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.server.DBTransactionImpl] [2231] Before getNativeJdbcConnection='weblogic.jdbc.wrapper.PoolConnection_oracle_jdbc_driver_T4CConnection
    [SRC_METHOD: establishNewConnection] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.server.DBTransactionImpl] [2232] After getNativeJdbcConnection='weblogic.jdbc.wrapper.PoolConnection_oracle_jdbc_driver_T4CConnection
    [SRC_METHOD: insert] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.pcoll.OraclePersistManager] [2233] **insert** error, sqlStmt=null
    [SRC_METHOD: insert] [URI: /jlpportal/faces/home] [SRC_CLASS: oracle.jbo.pcoll.OraclePersistManager] [2234] java.sql.SQLSyntaxErrorException: ORA-00942: table or view does not exist

  • Can't delete from parent table if FK constraint on the out-of-line table

    Using Oracle XML DB 11g
    I am using out-of-line storage table to store a collection of XML elements in conjuction with storeVarrayAsTable="true". So what I have is a parent table containing a nested table of VARRAY of REFs to rows in the out-of-line table.
    In addition, I have a foreign key constraint placed on a column in the out-of-line table.
    My problem is that I am not able to delete rows from the parent table when the FK constraint is placed on the out-of-line table. Only when I drop the FK constraint does the deletion work - all associated rows in the nested table and out-of-line table
    gets deleted correctly.
    With the FK constraint, deleting the child document like this
    dbms_xdb.deleteResource('/project-1.xml')
    gives me this error:
    ORA-31018: Error deleting XML document
    ORA-03001: unimplemented feature
    *Cause:  The XMLType object pointed to by the given REF could not
    be deleted because either the REF was invalid or it pointed to a non-existent table.
         *Action:  Either use FORCE deletion or supply a valid REF.
    I have tried deleting with the FORCE options as well with no success.
    Using DBMS_XDB.DELETE_RECURSIVE_FORCE option doesn't produce an error, but doesn't perform the deletion either.
    Here is the XML Schema:
    <?xml version="1.0" encoding="UTF-8"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xdb="http://xmlns.oracle.com/xdb" xmlns:xlink="http://www.w3.org/1999/xlink"
    elementFormDefault="qualified" attributeFormDefault="unqualified" xdb:storeVarrayAsTable="true">
    <xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="http://www.w3.org/1999/xlink.xsd"/>
    <xs:element name="project" xdb:defaultTable="PROJECT_TAB">
    <xs:complexType xdb:SQLType="PROJECT_TYP">
    <xs:sequence>
    <xs:element name="resourceList" minOccurs="0" xdb:SQLName="RESOURCE_LIST">
    <xs:complexType xdb:SQLType="RESOURCE_LIST_TYP">
    <xs:sequence>
    <xs:element name="aResource" type="refType" minOccurs="0" maxOccurs="unbounded" xdb:SQLInline="false"
    xdb:SQLName="A_RESOURCE_REF" xdb:defaultTable="RESOURCE_REF_TAB"/>
    </xs:sequence>
    </xs:complexType>
    </xs:element>
    </xs:sequence>
    <xs:attribute name="aguid" type="xs:string" use="required" xdb:SQLName="AGUID"/>
    </xs:complexType>
    </xs:element>
    <xs:element name="aResource" xdb:defaultTable="A_RESOURCE_TAB">
    <xs:complexType xdb:SQLType="A_RESOURCE_TYP">
    <xs:complexContent>
    <xs:extension base="contactType">
    <xs:attribute name="aguid" type="xs:string" use="required" xdb:SQLName="AGUID"/>
    </xs:extension>
    </xs:complexContent>
    </xs:complexType>
    </xs:element>
    <xs:complexType name="contactType" xdb:SQLType="CONTACT_TYP">
    <xs:sequence>
    <xs:element name="name" type="xs:string" xdb:SQLName="NAME"/>
    <xs:element name="email" type="xs:string" minOccurs="0" xdb:SQLName="EMAIL"/>
    <xs:element name="phone" type="xs:string" xdb:SQLName="PHONE"/>
    </xs:sequence>
    </xs:complexType>
    <xs:complexType name="refType" xdb:SQLType="REF_TYP">
    <xs:attribute ref="xlink:href" use="required"/>
    <xs:attribute name="oref" type="xs:string" use="optional" xdb:SQLName="OREF"/>
    </xs:complexType>
    </xs:schema>
    I registered the schema using structured storage with these options:
    BEGIN
    DBMS_XMLSCHEMA.registerschema(
    SCHEMAURL => 'LSDProjects.xsd',
    SCHEMADOC => xdbURIType('/home/LSDProject2/LSDProjects.xsd').getClob(),
    LOCAL => TRUE, -- local
    GENTYPES => TRUE, -- generate object types
    GENBEAN => FALSE, -- no java beans
    GENTABLES => TRUE -- generate object tables
    END;
    The PK and FK constraints were added like this:
    -- Add PK constraints on aResource/@aguid attributes
    ALTER TABLE A_RESOURCE_TAB ADD CONSTRAINT A_RESOURCE_AGUID_IS_UNIQUE UNIQUE (XMLDATA."AGUID");
    -- Add FK constraint on out-of-line table
    ALTER TABLE RESOURCE_REF_TAB
    ADD (CONSTRAINT ref_resource_aguid_is_valid FOREIGN KEY (XMLDATA."OREF")
    REFERENCES A_RESOURCE_TAB(XMLDATA."AGUID"));
    Here are the XML instance documents:
         where resource-1.xml looks like this :
    <aResource aguid="resource-1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="LSDProjects.xsd">
         <name>Jane Doe</name>
         <email>[email protected]</email>
    <phone/>
    </aResource>
         and project-1.xml looks like this :
         <project aguid="project-1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="LSDProjects.xsd"
                   xmlns:xlink="http://www.w3.org/1999/xlink">               
              <resourceList>
                   <aResource xlink:href="/resource-1.xml" oref="resource-1"/>                         
              </resourceList>     
         </project>
    where <project> document contains a collection of <aResource> elements stored in the out-of-line table and
    project/@oref attribute is a foreign key to the primary aResource/@aguid attribute.
    Can someone shed some light on why I am unable to delete "project-1.xml" from the repository when the FK constraint is applied onto the out-of-line table.
    Any advice/suggestions would be appreciated. Thanks!

    Thank you for the quick reply, mdrake.
    I am currently prototyping and testing out (best) ways to achieve data integrity with XML data in XML DB.
    I have instance documents that makes cross references to values in other instance documents
    (not of the same root nodes). What I'm trying to enforce is a referential constraint between the documents
    so that a document cannot be inserted if the referenced document doesn't exists.
    In this situation, a <project> document contains a collection of elements with @oref attributes.
    The collection is stored in an out-of-line table.
    For example:
    <project>
    <resourceList>
    <aResource ... oref="resource-1"/>
    <aResource ... oref="resource-2"/>
    </resourceList>
    </project>
    The @oref (FK) attribute above references a @aguid (PK) attribute in <aResource> document (below):
    <aResource aguid="resource-1"> .... </aResource>
    Basically, I want to ensure that the value of
    /project/resourceList/aResource/@oref
    correspond to a valid
    /aResource/@aguid
    Note that I was able to add the FK constraint on the OOL table without any issues.
    And the constraint did work as expected as I was not allowed to insert a <project> document
    that referenced a non-existent /aResource/@aguid.
    The problem was that I could not delete the <project> document from the XML DB repository
    once the FK contraint was added. Deleting with the DELETE_RECURSIVE_FORCE option did not give
    me any errors - is just didn't do anything.
    I guess there are certain limitations with using out-of-line tables.
    BTW, sorry the examples are hard to read as the indentations are removed when posting.

  • Ingestion Performance with Out-of-line on Large Schema

    I have a large and complex schema consisting of 5 XSD's and few hundred complex types and a few thousand elements. This schema will be used for loading files ranging from 50mb to 650mb.
    Since there are circular references and self references, I have annotated out-of-line storage for a few of the global element references. The ingestion performance for a very small sample file of 800k has shown severe performance problems with the ingestion. By using a sql trace, I have been able to limit the problem to the out-of-line storage.
    This 800k file should be able to load in under one second yet it has taken almost 2 minutes. The inserts to the out-of-line tables represent about 80%+ of the total time. Both of the entries I have included below are out-of-line tables.
    From the Trace
    1 session in tracefile.
    2109 user SQL statements in trace file.
    1336 internal SQL statements in trace file.
    3445 SQL statements in trace file.
    74 unique SQL statements in trace file.
    148036 lines in trace file.
    133 elapsed seconds in trace file.
    INSERT /*+ NO_REF_CASCADE NESTED_TABLE_SET_REFS */ INTO
    "<VENDOR>"."GSMRELATION_VSDATA" e (e.sys_nc_rowinfo$,e.sys_nc_oid$,
    e.docid)
    VALUES
    (:1,:2,:3) RETURNING e.sys_nc_oid$,e.rowid INTO :4,:5
    call count cpu elapsed disk query current rows
    Parse 323 0.03 0.02 0 0 0 0
    Execute 323 42.64 41.91 0 4178 3418 323
    Fetch 0 0.00 0.00 0 0 0 0
    total 646 42.67 41.94 0 4178 3418 323
    Misses in library cache during parse: 1
    Misses in library cache during execute: 1
    Optimizer mode: CHOOSE
    Parsing user id: 60 (recursive depth: 1)
    INSERT /*+ NO_REF_CASCADE NESTED_TABLE_SET_REFS */ INTO
    "<VENDOR>"."UTRAN_VSDATA" e (e.sys_nc_rowinfo$,e.sys_nc_oid$,e.docid)
    VALUES
    (:1,:2,:3) RETURNING e.sys_nc_oid$,e.rowid INTO :4,:5
    call count cpu elapsed disk query current rows
    Parse 140 0.04 0.01 0 0 0 0
    Execute 140 18.75 18.38 0 1338 1429 140
    Fetch 0 0.00 0.00 0 0 0 0
    total 280 18.79 18.40 0 1338 1429 140
    Misses in library cache during parse: 1
    Misses in library cache during execute: 1
    Optimizer mode: CHOOSE
    Parsing user id: 60 (recursive depth: 1)
    The data above was gathered from Solaris 9 running 10.2.0.2 with the latest patches available.
    I have been able to reproduce this same error to a different degree using a personal instance of Windows XP 10.2.0.2.
    Does anyone have any idea what is happening?
    Thanks,
    VJ

    By the way, SR 5991118.993 has been created. The Oracle tech has suggested
    Bug 4369117
    Abstract: UNACCEPTABLE DIRECT PATH OUT-OF-LINE LOB INSERT PERFORMANCE
    Would this be a problem even if I'm not using CLOB annotation?
    Thanks,

  • Question Intermediate table

    Could someone please help:
         I have an application where I'm tracking safety injury information.  Each Injury incident has multiple fields pertaining to the a accident along with about 13 text questions that a user will need to fill out to complete the
    incident.  Thus I have the following tables.  1. Incident 2.  IncidentNotes 3. Notes
    Incident - will contain all the unique information pertaining to the injury.
    IncidentNotes - I'm thinking will be the intermediate table.
    Notes - holds each note. (contains a field 'Note' nvarchar(max))
    Here's my issue.   At first I was thinking that the IncidentNotes would have a IncideintNotesID, IncidentID (FK), NoteID (FK).  That's great if Incident just had multiple notes.  But how do I keep track of which note refers to which question
    in the incident?
    Any Ideas would really be appreciated.  (Sorry if this is a newby question)

    Please try this: 
    CREATE DATABASE TEST
    GO
    USE TEST
    GO
    CREATE TABLE Incident
    IncidentId INT PRIMARY KEY ,
    field1 NVARCHAR(100) ,
    field2 NVARCHAR(200)
    GO
    CREATE TABLE Question
    QuestionId INT PRIMARY KEY ,
    Title NVARCHAR(1000)
    GO
    CREATE TABLE IncidentNotes
    IncidentId INT NOT NULL ,
    QuestionId INT NOT NULL ,
    Note NVARCHAR(1000)
    GO
    ALTER TABLE IncidentNotes
    ADD CONSTRAINT pK_IncidentNotes PRIMARY KEY (IncidentId, QuestionId );
    GO
    ALTER TABLE dbo.IncidentNotes ADD CONSTRAINT
    FK_IncidentNotes_Question FOREIGN KEY
    QuestionId
    ) REFERENCES dbo.Question
    QuestionId
    GO
    ALTER TABLE dbo.IncidentNotes ADD CONSTRAINT
    FK_IncidentNotes_Incident FOREIGN KEY
    IncidentId
    ) REFERENCES dbo.Incident
    IncidentId
    GO
    T-SQL Articles
    T-SQL e-book by TechNet Wiki Community
    T-SQL blog

  • SQL Developer import from Excel or CSV not creating new table

    I am sure I have done this with previous version of SQL Developer. I am now running 1.5.4 with patches update from 5/27/2009. I am running on Windows XP. When I start the import wizard I get to the point were the varify button appears. I click Verify. Everything is successful. The next button is grayed out. The send to worksheet is not checked. I press the finish button and the new table is not created.
    I don't get any error message. I refresh my table list and the new table is not created. I can create new tables using SQL Developer so I don't think it can be a privelege problem. I know I did this a few weeks ago. I am not sure what version of SQL Developer I was running. But I have updated to the latest and greatest since then.

    I wanted to import and use my table data from MS Excel 2010 in SQL developer Version 3.1.05.
    I was told that SQL does not import .xls data. For that reason, I was searching for a script which Import data from excel to SQL developer. I tried many different forums DBS blogs. Then eventually I found the solution inside the SQL developer itself.
    In your Editor window, There would be options like,
    1. Columns | Data | Constraints |Grants | Sta...... "so on"
    2. In second row, you can find a drop box with certain table options. Select the last option "Import Data"
    THERE YOU GO.
    do accordingly to your need and you will get the data as well its scripts.
    I hope this would help you all. Thanks. :-)

  • SE14 Status-UPGRADE-Table does not exist in the database

    Folks,
    I have created a ztable with SPRAS and few Char fields and generated a table maintenance generator.In the Dev it is working fine but when I moved the TR to Q TR ended up with errrors "Generation of Programs and Screens".When I check in Q in SE11 I am able to see the table but with an error message "Table doesn't exist in the database".
    SE14 Status for this table is getting shown as UPGRADE in Q.
    Can anyone here throw some light on what exactly this status UPGRADE means and how it gets set in SE14.
    In DEV,I had checked the DATABASE OBJECT>>CHECK>DISPLAY and RUNTIME OBJECT>>CHECK>>DISPLAY and it is showing Database object is consistent but where as the same in Q is showing "Table is not created in the Database".
    K.Kiran.

    Hi.
    Is Q system is newly copied? Also please check the transport order of the table creation request. Also check whether pwd of the DB user is locked?
    Regards,
    Vimal

  • Tables are not being deployed completely from Dictionary

    hi,
    I created a Dictionary project and a table with two columns in it. Then i rebuilt the project and created the .SDA archive.
    After that, i went to the navigator view and left clicked on the previusly created SDA archive and selected deploy. Deployment was succesful, and the table was created, but the two columns in that table were not created.
    Does someone know what went wrong?
    No matter how many times i repeat this steps, the columns are not created.
    thank you

    Please post this question on http://forums.oracle.com/forums/forum.jsp?id=486963 for best response.
    Ashesh Parekh
    Oracle9iAS Product Management

  • Out of line object 'DataSource' -- but when re-saving table properties, no issues

    I've got a PowerPivot workbook that's connecting to an Oracle database, then calculating a few measures. When I "test the connnection" in PowerPivot, it's fine. When I go to "Table Properties" and re-save, it seems to pull the dataset
    fine. But refreshing within Excel gives me, 
    We couldn't refresh the table 'AthleticGPABlahBlah' from the connection 'Student_PLSQLBlahBlah'. Here's the error message we got: Out of line object 'DataSource', referring to ID(s) 'c6427542-blahblah', has been specified but not used. The following
    system error occurred: Unspecified error
    My data types seem right, and I don't have any big dates. Is my workbook just corrupt? I'd love to not re-do it, so any tips to getting this fixed would be great!

    Hi Hensen,
    You mentioned that you don't have any big dates but do you have any dates that are too small? What happens when you use the Table Properties to restrict dates to all be on or after 1/1/2000, for example?
    Regards,
    Michael Amadi
    Please use the 'Mark as answer' link to mark a post that answers your question. If you find a reply helpful, please remember to vote it as helpful :)
    Website: http://www.nimblelearn.com, Twitter:
    @nimblelearn

  • Internal table with out header line

    Hi friends,
    Can u send me code for internal table with out header line : how to declare ,how to populate data and how to access the data
    Regards,
    vijay

    Hi Vijay
    There are several ways to declare an internal table without header line:
    A) You can define a type table
    TYPES: BEGIN OF TY_ITAB OCCURS 0,
            INCLUDE STRUCTURE ZTABLE.
    TYPES: END   OF TY_ITAB.
    and then your intrnal table:
    DATA: ITAB TYPE TY_ITAB.
    B) DATA: ITAB TYPE/LIKE STANDARD TABLE OF ZTABLE.
    C) DATA: ITAB TYPE/LIKE ZTABLE OCCURS 0.
    All these ways create a STANDARD TABLE
    You can create other types of internal table, for example SORTED TABLE or HASHED TABLE.
    These kinds of table can allow to improve the performance because they use different rules to read the data.
    When it wants to manage a table without header line, it need a work area, it has to have the same structure of table.
    DATA: WA LIKE ZTABLE.
    DATA: T_ZTABLE LIKE STANDARD TABLE OF ZTABLE.
    A) To insert the record:
    If you use INTO TABLE option you don't need workarea
    SELECT * FROM ZTABLE INTO TABLE T_ZTABLE
                                      WHERE FIELD1 = 'Z001'
                                        AND FIELD2 = '2006'.
    but if you want to append a single record:
    SELECT * FROM ZTABLE INTO wa WHERE FIELD1 = 'Z001'
                                   AND FIELD2 = '2006'.
    APPEND WA TO T_ZTABLE.
    ENDSELECT.
    Now you need workarea.
    B) To read data: you need always a workarea:
    LOOP AT T_ZTABLE INTO WA WHERE ....
      WRITE: / WA-FIELD1, WA-FIELD2, WA-FIELD3.
    ENDLOOP.
    or
    READ T_ZTABLE INTO WA WITH KEY FIELD3 = '0000000001'.
    IF SY-SUBRC = 0.
    WRITE: / WA-FIELD1, WA-FIELD2, WA-FIELD3.
    ENDIF.
    Anyway if you want to know only if a record exists, you can use the TRANSPORTING NO FIELDS option, in this case it doesn't need a workarea.
    READ T_ZTABLE WITH KEY FIELD3 = '0000000001'
                                      TRANSPORTING NO FIELDS.
    IF SY-SUBRC = 0.
    WRITE 'OK'.
    ENDIF.
    C) To update the data: it always needs a workarea
    LOOP AT T_ZTABLE INTO WA WHERE FIELD3 = '0000000001'.
    WA-FIELD3 = '0000000002'.
    MODIF T_ZTABLE FROM WA.
    ENDLOOP.
    or
    READ T_ZTABLE INTO WA WITH KEY FIELD3 = '0000000001'.
    IF SY-SUBRC = 0.
    WA-FIELD3 = '0000000002'.
    MODIF T_ZTABLE FROM WA INDEX SY-TABIX
    ENDIF.
    AT the end you can use the internal table to update database:
    MODIFY/UPDATE/INSERT ZTABLE FROM T_ZTABLE.
    See Help online for key words DATA, you can find out more details.
    Max
    Message was edited by: max bianchi

  • Help With Ora-19046:Out-of-line table cannot be shared by two top-level tab

    Hi!
    My tutor asked me to store and query the xml files in a "native" way in xml db. First I tried to register the schemas on which those xml files are based. There are about 30 of schemas asscociated with each other, and I have to use "FORCE" to register them , like this:
    BEGIN
    DBMS_XMLSCHEMA.registerSchema(
    'http://www.isotc211.org/gmd/metadataEntity.xsd',
    bfilename('ISOGMD', 'metadataEntity.xsd'),
    TRUE,
    TRUE,
    FALSE,
    TRUE,
    TRUE);
    END;
    Then no tables are created automaticly. And when I wanted to create a XML table based on thses schemas manually, it proped the error: ORA-19046:Out-of-line table cannot be shared by two top-level tab. This has confused me for about a week. Does anyone know what's wrong with the registration? Waiting eagerly on line! Thanks!

    First of all, i create a "filename.txt" that contains all my schemas' names. the names are:
    acquisitionInformation.xsd
    applicationSchema.xsd
    basicTypes.xsd
    catalogues.xsd
    citation.xsd
    codelistItem.xsd
    constraints.xsd
    temporalTopology.xsd
    topology.xsd
    units.xsd
    uomItem.xsd
    valueObjects.xsd
    xlinks.xsd
    there are 72 schemas. Then I register them using "force":
    GRANT EXECUTE ON utl_file to fld;
    create table test (
    fld1 VARCHAR2(50));
    declare
    isto_file utl_file.file_type;
    fp_buffer varchar2(4000);
    begin
    isto_file := utl_file.fopen('MYXMLDIR', 'filename.txt', 'R');
    loop
    begin
    utl_file.get_line (isto_file , fp_buffer );
    insert into test values(fp_buffer);
    Exception
    when no_data_found then
    exit;
    end;
    end loop;
    utl_file.fclose(isto_file);
    end;
    declare
    cursor my_cursor is select fld1 from test;
    v_name varchar2(50);
    begin
    open my_cursor;
    loop
    fetch my_cursor into v_name;
    dbms_xmlschema.registerSchema(
    schemaurl=>v_name,
    schemadoc=>bfilename('MYXMLDIR',v_name),
    local=>TRUE,
    gentables=>true,
    force=>true,
    csid=>nls_charset_id('AL32UTF8')
    exit when my_cursor%NOTFOUND;
    end loop;
    close my_cursor;
    end;
    at last, when I check the types generated during registration, I found that only a small number of types are automatically generated. When I try to create table manually ( based on certain element of one schema), it props errors, sometimes "31079. 00000 - "unable to resolve reference to %s \"%s\"" ", sometimes other errors.
    If I manually register them one by one from the base schema, then the registeration fail at some point. this is the script:
    BEGIN
    DBMS_XMLSCHEMA.registerSchema(
    'geometryAggregates.xsd',
    bfilename('XSD', 'geometryAggregates.xsd'),
    TRUE,
    TRUE,
    FALSE,
    TRUE);
    END;
    ERRORS
    22881. 00000 - "dangling REF"
    Is that something wrong with my schemas? I wonder how can i paste them here. there are 72 files.......

  • With header line & with out header line ?

    what is difference between with header line & without header line ?

    When you create an internal table object you can also declare a header line with the same name. You can use the header line as a work area when you process the internal table. The ABAP statements that you use with internal tables have short forms that you can use if your internal table has a header line. These statements automatically assume the header line as an implicit work area. The following table shows the statements that you must use for internal tables without a header line, and the equivalent statements that you can use for internal tables with a header line:
    Operations without header line
    Operations with header line
    Operations for all Table Types
    INSERT <wa> INTO TABLE <itab>.
    INSERT TABLE ITAB.
    COLLECT <wa> INTO <itab>.
    COLLECT <itab>.
    READ TABLE <itab> ... INTO <wa>.
    READ TABLE <itab> ...
    MODIFY TABLE <itab> FROM <wa> ...
    MODIFY TABLE <itab> ...
    MODIFY <itab> FROM <wa> ...WHERE ...
    MODIFY <itab> ... WHERE ...
    DELETE TABLE <itab> FROM <wa>.
    DELETE TABLE <itab>.
    LOOP AT ITAB INTO <wa> ...
    LOOP AT ITAB ...
    Operations for Index Tables
    APPEND <wa> TO <itab>.
    APPEND <itab>.
    INSERT <wa> INTO <itab> ...
    INSERT <itab> ...
    MODIFY <itab> FROM <wa> ...
    MODIFY <itab> ...
    Using the header line as a work area means that you can use shorter statements; however, they are not necessarily easier to understand, since you cannot immediately recognize the origin and target of the assignment. Furthermore, the fact that the table and its header line have the same name can cause confusion in operations with entire internal tables. To avoid confusion, you should use internal tables with differently-named work areas.
    The following example shows two programs with the same function. One uses a header line, the other does not.
    With header line:
    TYPES: BEGIN OF LINE,
    COL1 TYPE I,
    COL2 TYPE I,
    END OF LINE.
    DATA ITAB TYPE HASHED TABLE OF LINE WITH UNIQUE KEY COL1
    WITH HEADER LINE.
    DO 4 TIMES.
    ITAB-COL1 = SY-INDEX.
    ITAB-COL2 = SY-INDEX ** 2.
    INSERT TABLE ITAB.
    ENDDO.
    ITAB-COL1 = 2.
    READ TABLE ITAB FROM ITAB.
    ITAB-COL2 = 100.
    MODIFY TABLE ITAB.
    ITAB-COL1 = 4.
    DELETE TABLE ITAB.
    LOOP AT ITAB.
    WRITE: / ITAB-COL1, ITAB-COL2.
    ENDLOOP.
    Without header line:
    TYPES: BEGIN OF LINE,
    COL1 TYPE I,
    COL2 TYPE I,
    END OF LINE.
    DATA: ITAB TYPE HASHED TABLE OF LINE WITH UNIQUE KEY COL1,
    WA LIKE LINE OF ITAB.
    DO 4 TIMES.
    WA-COL1 = SY-INDEX.
    WA-COL2 = SY-INDEX ** 2.
    INSERT WA INTO TABLE ITAB.
    ENDDO.
    WA-COL1 = 2.
    READ TABLE ITAB FROM WA INTO WA.
    WA-COL2 = 100.
    MODIFY TABLE ITAB FROM WA.
    WA-COL1 = 4.
    DELETE TABLE ITAB FROM WA.
    LOOP AT ITAB INTO WA.
    WRITE: / WA-COL1, WA-COL2.
    ENDLOOP.
    The list, in both cases, appears as follows:
    1 1
    2 100
    3 9
    The statements in the program that does not use a header line are easier to understand. As a further measure, you could have a further work area just to specify the key of the internal table, but to which no other values from the table are assigned.
    Internal table with header line
    you can use anywhere except obkect oriented concept.
    Internal table without header line :
    You should use in Object oriented concept..
    Always try to use without header line,performance point of view it is best..
    Example :
    Without header line.
    Structure
    types : begin of ty_itab ,
    matnr type mara-matnr,
    end of ty_itab.
    Internal table
    data i_itab type standard table of ty_itab .
    Work area
    data wa_itab like line of i_itab
    With header line
    data : begin of i_itab occurs 0,
    matnr like mara-matnr,
    end of i_itab
    itab with header lines are obsolete, anyway it will work but not recommended. instead use work area or more effiecient is field symbols. so donot use itab with header line.
    i will explain use of itab w/o header line.
    Data: itab1 type standard table of mara with header line occurs 0,
            itab2 type standard table of mara,
            wa_itab2 type mara.
    loop at itab1.
    "This will work fine.
    endloop.
    loop at itab2.
    "This will give erro that itabd does not hav workarea
    endloop.
    "so write
    loop at itab2 into wa_itab2.
    "This will work
    endloop.
    <b>The difference between
    whih header line and with out heater line of internal table.
    ex:-
    a) Data : itab like mara occurs 0 with header line.
    b) Data: itab like mara occurs 0.
    -While adding or retrieving records to / from internal table we have to keep the record temporarily.
    -The area where this record is kept is called as work area for the internal table.
    -The area must have the same structure as that of internal table. An internal table consists of a body and an optional header line.
    -Header line is a implicit work area for the internal table. It depends on how the internal table is declared that the itab will have the header line or not.
    a) Data : itab like mara occurs 0 with header line.
    table is with header line
    b) Data: itab like mara occurs 0.
    table is without header line</b>
    regards,
    srinivas
    <b>*reward for useful answers*</b>

  • OUTER JOIN -- Error: ORA-01417  (a table may be outer joined to at most one

    Hi there,
    I have a rather simple task: retrieve all the records in a table, for agiven domain p_domain_id (input parameter). The problem is that there are about 6 FKs in the table, and I need the names (strings) corresponding to those FKs (from other tables). Unfortunately, some of the FKs are NULL, so in '=' I loose records. Without the last 2 lines in WHERE clause, I get the correct result. With d2 in place (and without the "(+)" ) I loose 2 records. With the d3 (and also without "(+)"), I do not get any record.
    With the "(+)", the code compiles but I get the run time error ORA-01417
    NOTE: I put the "+" within parentheses, in order to show it like a text in this editor.
    What's an elegant solution to this?
    Thanks a lot.
    Here's the code:
    SELECT
    a.DOMAIN,
    b.NAME,
    a.DE_ID,
    a.NAME,
    a.PREFERRED_LABEL,
    a.TECHNICAL_DEFINITION,
    a.PUBLIC_DEFINITION,
    a.DE_TYPE,
    c1.NAME,
    a.HAS_PARAMETER,
    a.VALUE_CLASS,
    c2.NAME,
    a.INDEX_TERMS,
    a.DATA_TABLE_ID,
    d1.TABLE_NAME,
    a.SP_INSERT,
    a.SP_UPDATE,
    a.SP_GET_BYMRN,
    a.SP_GET_BYATTRIBUTE,
    a.VALUE_TABLE_ID,
    d2.TABLE_NAME,
    a.PARAM_TABLE_ID,
    d3.TABLE_NAME,
    a.PARAM_DOMAIN_LOGIC,
    a.SP_LOV,
    a.LOWER_LIMIT,
    a.UPPER_LIMIT,
    a.BOOLEAN_Y,
    a.BOOLEAN_N,
    a.COMMENTS,
    a.ENTERED_BY,
    commons_API.get_person_full_name(a.ENTERED_BY),
    a.ENTERED_ON
    FROM
    DATA_ELEMENT_INDEX a,
    DE_DOMAIN b,
    GENERAL_LIST c1,
    GENERAL_LIST c2,
    TABLE_GROUP d1,
    TABLE_GROUP d2,
    TABLE_GROUP d3
    WHERE
    DOMAIN = p_domain_id AND
    b.DOMAIN_ID = a.DOMAIN AND
    c1.ID = a.DE_TYPE AND
    c2.ID = a.VALUE_CLASS AND
    d1.TABLE_ID = a.DATA_TABLE_ID AND -- it works well without the next two lines
    d2.TABLE_ID = a.VALUE_TABLE_ID "(+)" AND
    d3.TABLE_ID = a.PARAM_TABLE_ID "(+)"
    ORDER BY a.NAME;
    Edited by: user10817976 on Oct 19, 2009 8:14 AM

    One of my standard replies...
    Oracle syntax does not support outer joining to more than one table.
    However ANSI syntax does...
    SQL> select * from a;
            ID      B_KEY      C_KEY
             1          2          3
             2          1          4
             3          3          1
             4          4          2
    SQL> select * from b;
            ID     C_KEY2
             1          1
             2          5
             3          3
             4          2
    SQL> select * from c;
          KEY1       KEY2 DTA
             1          1 1-1
             1          2 1-2
             1          3 1-3
             1          4 1-4
             2          1 2-1
             2          2 2-2
             2          3 2-3
             2          4 2-4
             3          1 3-1
             3          2 3-2
             3          3 3-3
             3          4 3-4
             4          1 4-1
             4          2 4-2
             4          3 4-3
             4          4 4-4
    16 rows selected.
    SQL> ed
    Wrote file afiedt.buf
      1  select a.id as a_id, b.id as b_id, c.key1 as c_key1, c.key2 as c_key3, c.dta
      2  from a, b, c
      3  where a.b_key = b.id
      4  and   a.c_key = c.key1 (+)
      5* and   b.c_key2 = c.key2 (+)
    SQL> /
    and   a.c_key = c.key1 (+)
    ERROR at line 4:
    ORA-01417: a table may be outer joined to at most one other table
    SQL> ed
    Wrote file afiedt.buf
      1  select a.id as a_id, b.id as b_id, c.key1 as c_key1, c.key2 as c_key3, c.dta
      2  from a JOIN b ON (a.b_key = b.id)
      3*        LEFT OUTER JOIN c ON (a.c_key = c.key1 and b.c_key2 = c.key2)
    SQL> /
          A_ID       B_ID     C_KEY1     C_KEY3 DTA
             3          3          1          3 1-3
             4          4          2          2 2-2
             2          1          4          1 4-1
             1          2
    SQL>

Maybe you are looking for

  • How to retrieve available (server)-IP addresses on a LAN

    Is there a method to get all/the available (server)-IP-address(es) on a LAN from the host program? As far as I understood the samples (e.g. in tcpex.llb) the host (or it's operator) has to know the IP-address of the server to start communication. How

  • Database updates are not reflected in JDO objects.

    How to set time frame for sync up between database and cached JDO object? I am using kodo JDO in a servlet container, and a command line application will also updating database but these changes are not reflected in the database. The __kodo.DataCache

  • "Error writing metadata to" when applying keywords

    This is the initial post of the thread in this new forum, as requested. A link to the history of the issue is here. In a nutshell, this thread documents the irritating and difficult-to-track-down issue where Bridge is unable to write metatdata to a f

  • Programing in java using snmp

    hi i am new to snmp so plz bear with me actually i am trying to build a network monitoring system using snmp.how do i go abt it.how do i start?my application will be running on the server and i have made a database in sql which i hav connected using

  • Only importing certain pictures from camera

    I only want to import certain photos from my mom's Canon camera into iPhoto. Is there a way that i can see a list of the pictures on the camera and import only a few of them? Thanks, Beth