Nested Relational Model in Oracle Database

Hi
I was wondering if Oracle database has a facility to hold and manipulate the Nested relational model. In other words, are the nested tables equivalents to Nested Relational model, i.e. hierarchical representation.
Thanks.

Well it seems like the problems has a simple explanation. The Forte assigns a default table name (<entityName>EJBTable) when creating an entity bean from an existsing table in DB (which is not the same as the one it was created from !!!). Also, for reason unknown, when you deploy these entity beans, it doesn't even create the new table under its new name (even if instructed to).
So using the Forte we managed to use successfuly only entity beans that were created "from scretch" (when deployed their tables are created).
Does anyone know how to change the default name the Forte uses, and make it work properly with entity beans created from an existsing table (without going over the xml's) ?

Similar Messages

  • Ojdbc14.jar API and Oracle Database Version

    Hi
    Im using ojdbc14.jar for accessing an oracle 10G database.
    Im trying to troubleshoot an exception -
    java.sql.SQLException: Parameter Type Conflict
    that seems to get thrown by the method -
    OraclePreparedStatament.processCompletedBindRow
    I have a couple of questions:
    1. Is the documentation/source available for ojdbc14.jar in order that I can try and find out what this method is supposed to be doing?
    2. Also, can anyone confirm if the jar Im using is the correct version of drivers for accessing a 10G database?
    3. When I go to the JDBC support center at Oracle(http://www.oracle.com/technology/docs/tech/java/sqlj_jdbc/index.html) any support documentation/APIs refer only to the Oracle db version and dont mention Java versions. Im using ojdbc14.jar which I guess is for use with Java version 1.4 onwards - how does this relate to the Oracle database versions?
    Thnaks very much in advance to anyone who can give me any suggestions on the above. This issue has stumped me for days now. Ive checked and double checked my code, and the Oracle Java types I have generated from the database, and they all seem to be fine.
    Jon

    unzip it, and look at the MANIFEST.MF file in META-INF
    If you do not know the version, you can just download appropriate one from oracle site.
    http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html

  • Error in Oracle Database Backup and Recovery User's Guide 12c Release 1 (12.1) E17630-13

    on page 88 of the "Backup and Recovery User's Guide 12c Release 1 (12.1) E17630-13", the example 5-1 SHOW ALL Command is the same of the "Backup and Recovery User's Guide 11g Release 2 (11.2) E10642-06" on page 82 and that output is related to a Oracle Database 11g version (the 10g doesn't print the first line "RMAN configuration parameters for database with db_unique_name PROD1 are:").

    My test cases here:
    Database administrator workshop: Differences in default RMAN configuration settings between 12c and 11g
    {code}[oracle@vsi08devpom ~]$ export ORACLE_SID=CDB001
    [oracle@vsi08devpom admin]$ sqlplus system/oracle@CDB001
    SQL*Plus: Release 12.1.0.1.0 Production on Thu Sep 26 09:10:50 2013
    Copyright (c) 1982, 2013, Oracle.  All rights reserved.
    Last Successful login time: Tue Jul 16 2013 13:43:48 +02:00
    Connected to:
    Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
    With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
    SQL> show con_name
    CON_NAME
    CDB$ROOT
    [oracle@vsi08devpom ~]$ rman target /
    Recovery Manager: Release 12.1.0.1.0 - Production on Thu Sep 26 09:12:42 2013
    Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.
    connected to target database: CDB001 (DBID=4134963396)
    RMAN> show all;
    using target database control file instead of recovery catalog
    RMAN configuration parameters for database with db_unique_name CDB001 are:
    CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
    CONFIGURE BACKUP OPTIMIZATION OFF; # default
    CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
    CONFIGURE CONTROLFILE AUTOBACKUP ON; # default
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
    CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
    CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
    CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
    CONFIGURE MAXSETSIZE TO UNLIMITED; # default
    CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
    CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
    CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
    CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # default
    CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
    CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/opt/app/oracle/product/12.1.0/db_1/dbs/snapcf_CDB001.f'; # default{code}
    {code}
    [oracle@localhost orcl]$ rman target /
    Recovery Manager: Release 11.2.0.2.0 - Production on Wed Sep 25 08:12:17 2013
    Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
    connected to target database: ORCL (DBID=1229390655)
    RMAN> show all;
    using target database control file instead of recovery catalog
    RMAN configuration parameters for database with db_unique_name ORCL are:
    CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
    CONFIGURE BACKUP OPTIMIZATION OFF; # default
    CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
    CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE SBT_TAPE TO '%F'; # default
    CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
    CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
    CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default
    CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
    CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE SBT_TAPE TO 1; # default
    CONFIGURE MAXSETSIZE TO UNLIMITED; # default
    CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
    CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
    CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
    CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
    CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/home/oracle/app/oracle/product/11.2.0/dbhome_2/dbs/snapcf_orcl.f'; # default
    {code}

  • Unable to Create Entity Model from existing oracle database

    Hi,
    I am using Visual Studio 2013, .net framework 4.5, entity framework 5.0 and oracle 11g database.
    Issue Description: I need to develop WCF service to exposing the account information which needs to get the data from 20 oracle tables. Trying to create entity model from existing oracle database. first i tried creating just two tables it
    was created but it took more than 30 minutes. then i selected remaining few tables it took more than a days but nothing created just showing spinning the wheel. then i tried with fresh project and selected all the tables but same issue nothing created and
    also there is no error. during this process i checked database query monitoring there is a big sql statement collection tables metadata. i don't know what was wrong the query taking too much time to complete the  process.
    we tried multiple machine and different oracle database all are same issue.
    Sql server database -looks good no issues.
    Any help/tips/ideas welcome to overcome this issue.

    Hi Sakthimp,
    Welcome to MSDN forum.
    Your issue is out of support range of VS General Question forum which mainly discusses the usage of Visual Studio IDE such as
    WPF & SL designer, Visual Studio Guidance Automation Toolkit, Developer Documentation and Help System
    and Visual Studio Editor.
    Because your issue only occurred with oracle database, moreover Oracle developed the Entity Framework for Oracle itself, I suggest that you can consult your issue on Oracle forum/community:
    you will get better solution and support there.
    Best regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Refresh whole relational model from database

    Version 3.2.09 - Build MAIN-09.30
    Hi,
    I have created a model of my database in SQL Developer using the Data Modeller component by dragging all the table objects from the Tables tree onto the relational and logical panes. As I make changes to the database is it possible to refresh the model. I have used the following method whereby I delete the table graphic in the Relational_x view and then dragging the object from the object browsing tree back into the relational diagram, but is there a button that I can push that will just rip through and refresh my relationship diagram as a whole?
    Ben

    Yes, on the main toolbar, there's a blue button that points to the LEFT. Read more about that here.
    By the way, there's another way to add the tables/views from your database, might be easier than doing the drag and drop. Use File > Data Modeler > Import > Data Dictionary.

  • Uninstalling the entire oracle database related components in oel5

    Hi,
    i need to uninstall oracle database 10g and related to its all components please provide me the steps and also the needed comments to uninstall it from the oel5

    1. shutdown immediate -- stop the database.
    2. Run the oracle universal installer and remove the oracle software.
    If step 2 is not possible then
    Remove all the datafiles,controlfiles and redologfiles for the database.
    Remove all the directories under ORACLE_HOME.
    3. Remove /etc/oratab
    Regards
    Asif Kabir
    45 (43 unresolved)
    -- If helps, mark your answer as correct/helpful.

  • Where is the documentation for Oracle Spatial Relational Model?

    Hi,
    I'm working with Oracle Spatial for my schema model. In the documentation "Oracle Spatial User's Guide and Reference" there is a note about what this is in OTN but i don't find it!!
    Can anybody help me, where I find the "Oracle Spatial Relational Model Guide and Reference"?

    Thanks! But just i have read this information. And in the documentation for spatial 9.0.1 there is one document only, and in this document there is a Note that reference to nonexistent document with title "Oracle Spatial Relational Model Guide and Reference" this is the document that i'm searching.
    Thank you for your help!

  • Related with Oracle Database port no.

    Hello everbody!
    Is there a way to know the port no of my Oracle Database.
    I want to connect it in my java application but not sure about the port no.
    Regards,
    Manoj Paul

    Paul M. wrote:
    But where will I type the command $lsnrctl status ?At OS prompt, but without the dollar sign, which is the standard OS prompt for Unix/Linux.Thank you so much for the kind help..
    It's very helpful.
    Thank you all too for your kind cooperation.
    Regards,
    Manoj Paul

  • Working with Object Relational model and Eclipse

    Hello,
    I have mad some types and typed tables in a schema on oracle 10g.
    My database respects the Object Relational model, in which I work with VARRAY, TYPES, NESTED TABLES, PL/SQL,...
    I have already install Enterprise Pack for Eclipse, and also have the Weblogic server, And I can generate tables. But the problem is that it gives to me this tables with wrong types, until they contains in fact other tables as Objet column, and also the types are not supported.
    Please need a help !
    Thank's in advance :)

    nhauge wrote:
    Hi,
    I want to make sure I understand the problem but will try to give you some information as well. So you have an Oracle 10g database in which you are using the object-relational database model with VARRAY's, etc. You say you are also trying to generate tables, but the generation is not working correctly. Are you using the "Generate tables from entities..." functionality? What is the source of the generated tables? I assume you generating from some type of JPA entity? Could you give a small example of the source you are generating from?
    In order to generate proper tables of this type, you would need to be using special TopLink/EclipseLink annotations such as @Array so the persistence provider would know that they are "special" and not just regular entities that would create standard relational tables.
    Neil
    Thank you for your replay,
    well I'm generating that with "Generate tables from entities" of eclipse link.
    this is an example of what I have in the database:
    [DB-SCRIPT|http://www.mediafire.com/view/?n3knwz1o4ggk50n]
    and this is what is generated(eclipselink-orm.xml):
    <?xml version="1.0" encoding="UTF-8"?>
    <entity-mappings version="1.2" xmlns="http://www.eclipse.org/eclipselink/xsds/persistence/orm" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eclipse.org/eclipselink/xsds/persistence/orm http://www.eclipse.org/eclipselink/xsds/eclipselink_orm_1_2.xsd">
         <entity class="model.Chefterritoire" access="VIRTUAL">
              <attributes>
                   <id name="idChef" attribute-type="long">
                        <column name="ID_CHEF"/>
                   </id>
                   <basic name="lesterritoires" attribute-type="Object">
                   </basic>
                   <basic name="nomChef" attribute-type="String">
                        <column name="NOM_CHEF"/>
                   </basic>
                   <basic name="tel" attribute-type="java.math.BigDecimal">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Client" access="VIRTUAL">
              <attributes>
                   <id name="idClient" attribute-type="long">
                        <column name="ID_CLIENT"/>
                   </id>
                   <basic name="adresseClient" attribute-type="String">
                        <column name="ADRESSE_CLIENT"/>
                   </basic>
                   <basic name="dateP" attribute-type="java.util.Date">
                        <column name="DATE_P"/>
                        <temporal>DATE</temporal>
                   </basic>
                   <basic name="lescommandes" attribute-type="Object">
                   </basic>
                   <basic name="nomClient" attribute-type="String">
                        <column name="NOM_CLIENT"/>
                   </basic>
                   <basic name="profession" attribute-type="String">
                   </basic>
                   <basic name="refrepresentant" attribute-type="Object">
                   </basic>
                   <basic name="telClient" attribute-type="java.math.BigDecimal">
                        <column name="TEL_CLIENT"/>
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Commande" access="VIRTUAL">
              <attributes>
                   <id name="idCommande" attribute-type="long">
                        <column name="ID_COMMANDE"/>
                   </id>
                   <basic name="dateCommande" attribute-type="java.util.Date">
                        <column name="DATE_COMMANDE"/>
                        <temporal>DATE</temporal>
                   </basic>
                   <basic name="dateLivraison" attribute-type="java.util.Date">
                        <column name="DATE_LIVRAISON"/>
                        <temporal>DATE</temporal>
                   </basic>
                   <basic name="refreleve" attribute-type="Object">
                   </basic>
                   <basic name="refrepresentant" attribute-type="Object">
                   </basic>
                   <basic name="refvehicule" attribute-type="Object">
                   </basic>
                   <basic name="reprise" attribute-type="String">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Constructeur" access="VIRTUAL">
              <attributes>
                   <id name="idConstructeur" attribute-type="long">
                        <column name="ID_CONSTRUCTEUR"/>
                   </id>
                   <basic name="adresseConstructeur" attribute-type="String">
                        <column name="ADRESSE_CONSTRUCTEUR"/>
                   </basic>
                   <basic name="lesreleves" attribute-type="Object">
                   </basic>
                   <basic name="nomConstructeur" attribute-type="String">
                        <column name="NOM_CONSTRUCTEUR"/>
                   </basic>
                   <basic name="refvehucule" attribute-type="Object">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.LesccommandesN" access="VIRTUAL">
              <table name="LESCCOMMANDES_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.LescommandessN" access="VIRTUAL">
              <table name="LESCOMMANDESS_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.LescommandesN" access="VIRTUAL">
              <table name="LESCOMMANDES_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.LesoptionsN" access="VIRTUAL">
              <table name="LESOPTIONS_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.LesrepresentantsN" access="VIRTUAL">
              <table name="LESREPRESENTANTS_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.LessclientsN" access="VIRTUAL">
              <table name="LESSCLIENTS_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.LesscommandesN" access="VIRTUAL">
              <table name="LESSCOMMANDES_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.LesterritoiresN" access="VIRTUAL">
              <table name="LESTERRITOIRES_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.LesvehiculesN" access="VIRTUAL">
              <table name="LESVEHICULES_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.Modele" access="VIRTUAL">
              <attributes>
                   <id name="idModele" attribute-type="long">
                        <column name="ID_MODELE"/>
                   </id>
                   <basic name="couleurExterieure" attribute-type="String">
                        <column name="COULEUR_EXTERIEURE"/>
                   </basic>
                   <basic name="couleurInterieure" attribute-type="String">
                        <column name="COULEUR_INTERIEURE"/>
                   </basic>
                   <basic name="lesoptions" attribute-type="Object">
                   </basic>
                   <basic name="lesvehicules" attribute-type="Object">
                   </basic>
                   <basic name="prix" attribute-type="double">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Option" access="VIRTUAL">
              <table name="OPTIONS"/>
              <attributes>
                   <id name="idOption" attribute-type="long">
                        <column name="ID_OPTION"/>
                   </id>
                   <basic name="nomOption" attribute-type="String">
                        <column name="NOM_OPTION"/>
                   </basic>
                   <basic name="refmodele" attribute-type="Object">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Rapportvisite" access="VIRTUAL">
              <attributes>
                   <id name="idRapport" attribute-type="long">
                        <column name="ID_RAPPORT"/>
                   </id>
                   <basic name="dateVisite" attribute-type="java.util.Date">
                        <column name="DATE_VISITE"/>
                        <temporal>DATE</temporal>
                   </basic>
                   <basic name="frais" attribute-type="double">
                   </basic>
                   <basic name="refclient" attribute-type="Object">
                   </basic>
                   <basic name="refrepresentant" attribute-type="Object">
                   </basic>
                   <basic name="resultat" attribute-type="String">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Releve" access="VIRTUAL">
              <attributes>
                   <id name="idReleve" attribute-type="long">
                        <column name="ID_RELEVE"/>
                   </id>
                   <basic name="dateDebut" attribute-type="java.util.Date">
                        <column name="DATE_DEBUT"/>
                        <temporal>DATE</temporal>
                   </basic>
                   <basic name="dateFin" attribute-type="java.util.Date">
                        <column name="DATE_FIN"/>
                        <temporal>DATE</temporal>
                   </basic>
                   <basic name="lescommandes" attribute-type="Object">
                   </basic>
                   <basic name="refconst" attribute-type="Object">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.RelevesN" access="VIRTUAL">
              <table name="RELEVES_N"/>
              <attributes>
              </attributes>
         </entity>
         <entity class="model.Remise" access="VIRTUAL">
              <attributes>
                   <id name="idRemise" attribute-type="long">
                        <column name="ID_REMISE"/>
                   </id>
                   <basic name="remise" attribute-type="double">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Representant" access="VIRTUAL">
              <attributes>
                   <id name="idRepresentant" attribute-type="long">
                        <column name="ID_REPRESENTANT"/>
                   </id>
                   <basic name="lesclients" attribute-type="Object">
                   </basic>
                   <basic name="lescommandes" attribute-type="Object">
                   </basic>
                   <basic name="nomRepresentant" attribute-type="String">
                        <column name="NOM_REPRESENTANT"/>
                   </basic>
                   <basic name="refterritoire" attribute-type="Object">
                   </basic>
                   <basic name="typeRep" attribute-type="String">
                        <column name="TYPE_REP"/>
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Territoire" access="VIRTUAL">
              <attributes>
                   <id name="idTerritoire" attribute-type="long">
                        <column name="ID_TERRITOIRE"/>
                   </id>
                   <basic name="lesrepresentants" attribute-type="Object">
                   </basic>
                   <basic name="nomTerritoire" attribute-type="String">
                        <column name="NOM_TERRITOIRE"/>
                   </basic>
                   <basic name="refchef" attribute-type="Object">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Vehicule" access="VIRTUAL">
              <attributes>
                   <id name="idVehicule" attribute-type="long">
                        <column name="ID_VEHICULE"/>
                   </id>
                   <basic name="lescommandes" attribute-type="Object">
                   </basic>
                   <basic name="nomVehicule" attribute-type="String">
                        <column name="NOM_VEHICULE"/>
                   </basic>
                   <basic name="refavoir" attribute-type="Object">
                   </basic>
                   <basic name="refmodele" attribute-type="Object">
                   </basic>
              </attributes>
         </entity>
         <entity class="model.Visiteav" access="VIRTUAL">
              <attributes>
                   <id name="idVisiteav" attribute-type="long">
                        <column name="ID_VISITEAV"/>
                   </id>
                   <basic name="dateDebut" attribute-type="java.util.Date">
                        <column name="DATE_DEBUT"/>
                        <temporal>DATE</temporal>
                   </basic>
                   <basic name="dateFin" attribute-type="java.util.Date">
                        <column name="DATE_FIN"/>
                        <temporal>DATE</temporal>
                   </basic>
                   <basic name="refclient" attribute-type="Object">
                   </basic>
                   <basic name="refrepresentant" attribute-type="Object">
                   </basic>
              </attributes>
         </entity>
    </entity-mappings>

  • How to find the level of each child table in a relational model?

    Earthlings,
    I need your help and I know that, 'yes, we can change'. Change this thread to a answered question.
    So: How to find the level of each child table in a relational model?
    I have a relacional database (9.2), all right?!
         O /* This is a child who makes N references to each of the follow N parent tables (here: three), and so on. */
        /↑\ Fks
       O"O O" <-- level 2 for first table (circle)
      /↑\ Fks
    "o"o"o" <-- level 1 for middle table (circle)
       ↑ Fk
      "º"Tips:
    - each circle represents a table;
    - red tables no have foreign key
    - the table in first line of tree, for example, has level 3, but when 3 becomes N? How much is N? This's the question.
    I started thinking about the following:
    First I have to know how to take the children:
    select distinct child.table_name child
      from all_cons_columns father
      join all_cons_columns child
    using (owner, position)
      join (select child.owner,
                   child.constraint_name fk,
                   child.table_name child,
                   child.r_constraint_name pk,
                   father.table_name father
              from all_constraints father, all_constraints child
             where child.r_owner = father.owner
               and child.r_constraint_name = father.constraint_name
               and father.constraint_type in ('P', 'U')
               and child.constraint_type = 'R'
               and child.owner = 'OWNER') aux
    using (owner)
    where child.constraint_name = aux.fk
       and child.table_name = aux.child
       and father.constraint_name = aux.pk
       and father.table_name = aux.father;Thinking...
    Let's Share!
    My thanks in advance,
    Philips
    Edited by: BluShadow on 01-Apr-2011 15:08
    formatted the code and the hierarchy for readbility

    Justin,
    Understood.
    Nocycle not work in 9.2 and, even that would work, would not be appropriate.
    With your help, I decided a much simpler way (but there is still a small problem, <font color=red>IN RED</font>):
    -- 1
    declare
      type udt_roles is table of varchar2(30) index by pls_integer;
      cRoles udt_roles;
    begin
      execute immediate 'create user philips
        identified by philips';
      select granted_role bulk collect
        into cRoles
        from user_role_privs
       where username = user;
      for i in cRoles.first .. cRoles.count loop
        execute immediate 'grant ' || cRoles(i) || ' to philips';
      end loop;
    end;
    -- 2
    create table philips.root1(root1_id number,
                               constraint root1_id_pk primary key(root1_id)
                               enable);
    grant all on philips.root1 to philips;
    create or replace trigger philips.tgr_root1
       before delete or insert or update on philips.root1
       begin
         null;
       end;
    create table philips.root2(root2_id number,
                               constraint root2_id_pk primary key(root2_id)
                               enable);
    grant all on philips.root2 to philips;
    create or replace trigger philips.tgr_root2
       before delete or insert or update on philips.root2
       begin
         null;
       end;
    create table philips.node1(node1_id number,
                               root1_id number,
                               node2_id number,
                               node4_id number,
                               constraint node1_id_pk primary key(node1_id)
                               enable,
                               constraint n1_r1_id_fk foreign key(root1_id)
                               references philips.root1(root1_id) enable,
                               constraint n1_n2_id_fk foreign key(node2_id)
                               references philips.node2(node2_id) enable,
                               constraint n1_n4_id_fk foreign key(node4_id)
                               references philips.node4(node4_id) enable);
    grant all on philips.node1 to philips;
    create or replace trigger philips.tgr_node1
       before delete or insert or update on philips.node1
       begin
         null;
       end;
    create table philips.node2(node2_id number,
                               root1_id number,
                               node3_id number,
                               constraint node2_id_pk primary key(node2_id)
                               enable,
                               constraint n2_r1_id_fk foreign key(root1_id)
                               references philips.root1(root1_id) enable,
                               constraint n2_n3_id_fk foreign key(node3_id)
                               references philips.node3(node3_id) enable);
    grant all on philips.node2 to philips;
    create or replace trigger philips.tgr_node2
       before delete or insert or update on philips.node2
       begin
         null;
       end;                          
    create table philips.node3(node3_id number,
                               root2_id number,
                               constraint node3_id_pk primary key(node3_id)
                               enable,
                               constraint n3_r2_id_fk foreign key(root2_id)
                               references philips.root2(root2_id) enable);
    grant all on philips.node3 to philips;
    create or replace trigger philips.tgr_node3
       before delete or insert or update on philips.node3
       begin
         null;
       end;                          
    create table philips.node4(node4_id number,
                               node2_id number,
                               constraint node4_id_pk primary key(node4_id)
                               enable,
                               constraint n4_n2_id_fk foreign key(node2_id)
                               references philips.node2(node2_id) enable);
    grant all on philips.node4 to philips;
    create or replace trigger philips.tgr_node4
       before delete or insert or update on philips.node4
       begin
         null;
       end;                          
    -- out of the relational model
    create table philips.node5(node5_id number,
                               constraint node5_id_pk primary key(node5_id)
                               enable);
    grant all on philips.node5 to philips;
    create or replace trigger philips.tgr_node5
       before delete or insert or update on philips.node5
       begin
         null;
       end;
    -- 3
    create table philips.dictionary(table_name varchar2(30));
    insert into philips.dictionary values ('ROOT1');
    insert into philips.dictionary values ('ROOT2');
    insert into philips.dictionary values ('NODE1');
    insert into philips.dictionary values ('NODE2');
    insert into philips.dictionary values ('NODE3');
    insert into philips.dictionary values ('NODE4');
    insert into philips.dictionary values ('NODE5');
    --4
    create or replace package body philips.pck_restore_philips as
      procedure sp_select_tables is
        aExportTablesPhilips     utl_file.file_type := null; -- file to write DDL of tables   
        aExportReferencesPhilips utl_file.file_type := null; -- file to write DDL of references
        aExportIndexesPhilips    utl_file.file_type := null; -- file to write DDL of indexes
        aExportGrantsPhilips     utl_file.file_type := null; -- file to write DDL of grants
        aExportTriggersPhilips   utl_file.file_type := null; -- file to write DDL of triggers
        sDirectory               varchar2(100) := '/app/oracle/admin/tace/utlfile'; -- directory \\bmduhom01or02 
        cTables                  udt_tables; -- collection to store table names for the relational depth
      begin
        -- omits all referential constraints:
        dbms_metadata.set_transform_param(dbms_metadata.session_transform, 'REF_CONSTRAINTS', false);
        -- omits segment attributes (physical attributes, storage attributes, tablespace, logging):
        dbms_metadata.set_transform_param(dbms_metadata.session_transform, 'SEGMENT_ATTRIBUTES', false);
        -- append a SQL terminator (; or /) to each DDL statement:
        dbms_metadata.set_transform_param(dbms_metadata.session_transform, 'SQLTERMINATOR', true);
        -- create/open files for export DDL:
        aExportTablesPhilips := utl_file.fopen(sDirectory, 'DDLTablesPhilips.pdc', 'w', 32767);
        aExportReferencesPhilips := utl_file.fopen(sDirectory, 'DDLReferencesPhilips.pdc', 'w', 32767);
        aExportIndexesPhilips := utl_file.fopen(sDirectory, 'DDLIndexesPhilips.pdc', 'w', 32767);
        aExportGrantsPhilips := utl_file.fopen(sDirectory, 'DDLGrantsPhilips.pdc', 'w', 32767);
        aExportTriggersPhilips := utl_file.fopen(sDirectory, 'DDLTriggersPhilips.pdc', 'w', 32767);
        select d.table_name bulk collect
          into cTables -- collection with the names of tables in the schema philips
          from all_tables t, philips.dictionary d
         where owner = 'PHILIPS'
           and t.table_name = d.table_name;
        -- execution
        sp_seeks_ddl(aExportTablesPhilips,
                     aExportReferencesPhilips,
                     aExportIndexesPhilips,
                     aExportGrantsPhilips,
                     aExportTriggersPhilips,
                     cTables);
        -- closes all files
        utl_file.fclose_all;
      end sp_select_tables;
      procedure sp_seeks_ddl(aExportTablesPhilips     in utl_file.file_type,
                             aExportReferencesPhilips in utl_file.file_type,
                             aExportIndexesPhilips    in utl_file.file_type,
                             aExportGrantsPhilips     in utl_file.file_type,
                             aExportTriggersPhilips   in utl_file.file_type,
                             cTables                  in out nocopy udt_tables) is
        cDDL       clob := null; -- colletion to save DDL
        plIndex    pls_integer := null;
        sTableName varchar(30) := null;
      begin
        for i in cTables.first .. cTables.count loop
          plIndex    := i;
          sTableName := cTables(plIndex);
           * Retrieves the DDL and the dependent DDL into cDDL clob       *      
          * for the selected table in the collection, and writes to file.*
          begin
            cDDL := dbms_metadata.get_ddl('TABLE', sTableName, 'PHILIPS');
            sp_writes_ddl(aExportTablesPHILIPS, cDDL);
          exception
            when dbms_metadata.object_not_found then
              null;
          end;
          begin
            cDDL := dbms_metadata.get_dependent_ddl('REF_CONSTRAINT', sTableName, 'PHILIPS');
            sp_writes_ddl(aExportReferencesPhilips, cDDL);
          exception
            when dbms_metadata.object_not_found2 then
              null;
          end;
          begin
            cDDL := dbms_metadata.get_dependent_ddl('INDEX', sTableName, 'PHILIPS');
            sp_writes_ddl(aExportIndexesPhilips, cDDL);
          exception
            when dbms_metadata.object_not_found2 then
              null;
          end;
          begin
            cDDL := dbms_metadata.get_dependent_ddl('OBJECT_GRANT', sTableName, 'PHILIPS');
            sp_writes_ddl(aExportGrantsPhilips, cDDL);
          exception
            when dbms_metadata.object_not_found2 then
              null;
          end;
          begin
            cDDL := dbms_metadata.get_dependent_ddl('TRIGGER', sTableName, 'PHILIPS');
            sp_writes_ddl(aExportTriggersPhilips, cDDL);
          exception
            when dbms_metadata.object_not_found2 then
              null;
          end;
        end loop;
      end sp_seeks_ddl;
      procedure sp_writes_ddl(aExport in utl_file.file_type,
                              cDDL    in out nocopy clob) is
        pLengthDDL  pls_integer := length(cDDL);
        plQuotient  pls_integer := null;
        plRemainder pls_integer := null;
      begin
          * Register variables to control the amount of lines needed   *
         * for each DDL and the remaining characters to the last row. *
        select trunc(pLengthDDL / 32766), mod(pLengthDDL, 32766)
          into plQuotient, plRemainder
          from dual;
          * Join DDL in the export file.                            *
         * ps. 32766 characters + 1 character for each line break. *
        -- if the size of the DDL is greater than or equal to limit the line ...
        if plQuotient >= 1 then
          -- loops for substring (lines of 32766 characters + 1 break character):
          for i in 1 .. plQuotient loop
            utl_file.put_line(aExport, substr(cDDL, 1, 32766));
            -- removes the last line, of clob, recorded in the buffer:
            cDDL := substr(cDDL, 32767, length(cDDL) - 32766);
          end loop;
        end if;
          * If any remains or the number of characters is less than the threshold (quotient = 0), *
         * no need to substring.                                                                 *
        if plRemainder > 0 then
          utl_file.put_line(aExport, cDDL);
        end if;
        -- record DDL buffered in the export file:
        utl_file.fflush(aExport);
      end sp_writes_ddl;
    begin
      -- executes main procedure:
      sp_select_tables;
    end pck_restore_philips;<font color="red">The problem is that I still have ...
    When creating the primary key index is created and this is repeated in the file indexes.
    How to avoid?</font>

  • Error in import : tabular model with Oracle

    Hi there,
    I seems to be getting very strange error.
    I am trying to build tabular model over oracle db. I get test successfull for connection, able to validate the query, and in query designer, if i execute it shows me data too. But when i press finish, it gives me error while importing.
    ERROR from import screen
    OLE DB or ODBC error: ORA-01033: ORACLE initialization or shutdown in progress.
    A connection could not be made to the data source with the DataSourceID of '8ffdbfd9-e21f-442d-9040-b66dc074c87d', Name of 'XXXXXXX'.
    An error occurred while processing the partition 'XXX_3fc019fa-4d1a-4d39-9317-3dcde3297579' in table 'XXXXXX'.
    The current operation was cancelled because another operation in the transaction failed.
    I cant figure this out,Even in Execl powerpivot i am able to pull the data in.
    Any idea..TIA
    Rahul Kumar, MCTS, India, http://sqlserversolutions.blogspot.com/

    Hi Rahul,
    Based on my research, for the error “OLE DB or ODBC error: ORA-01033: ORACLE initialization or shutdown in progress.
    A connection could not be made to the data source with the DataSourceID of '8ffdbfd9-e21f-442d-9040-b66dc074c87d', Name of 'XXXXXXX'.”
    It seems that it related to Oracle database, here are some links about how to troubleshoot this issue, please see:
    ERROR - ORA-01033 oracle initialization or shutdown in progress
    ERROR - ORA-01033 oracle initialization or shutdown in progress
    If the issue persists, since I am not an expert on Oracle database, you can post the question on the Oracle forum, so that you can get more help.
    Regards,
    Charlie Liao
    If you have any feedback on our support, please click
    here.
    Charlie Liao
    TechNet Community Support

  • Delete Rules between Logical Model and Relational Model are different

    Relation Properties in Logical model has three Delete Rules: "RESTRICT", "NO_ACTION", "SET NULL".
    1. "RESTRICT" and "NO_ACTION" are same
    2. "CASCADE" is missing.
    However, Foreign Key Properties in Physical model has three Delete Rules: "RESTRICT", "NO_ACTION", "CASCADE".
    1. "RESTRICT" and "NO_ACTION" are same
    2. "SET NULL" is missing in this case.
    They are supposed to have "NO_ACTION or RESTRICT", "SET NULL", and "CASCADE".
    Please fix this ASAP. It is really annoying in Engineering process. Modeler creates duplicate wrong relationships while it engineers.
    Thanks.
    Edited by: hayangae on Oct 9, 2012 1:01 PM
    Edited by: hayangae on Apr 3, 2013 4:08 PM

    Hi,
    it seems you are not using the latest version 3.3. In earlier versions - delete rule set on relationship was used only in some cases to set delete rule on related foreign key. Now delete rule is transferred to FK as it's defined on relationship.
    I assume you are using Oracle database - "Restrict" doesn't appear anymore for Oracle.
    2. "SET NULL" is missing in this case.Most likely the foreign key is set as mandatory thus you cannot use "set null" as option.
    Modeler creates duplicate wrong relationships while it engineers.Can you elaborate on that - example?
    Philip

  • Engineer between Logical Model and Relational Model

    I am trying to update changes from one model to the other but there are dublicate entries generated instead of updates.
    The Logical Model was imported from Oracle Designer, the Relational Model was imported from data dictionary.
    Our rule is, that the name of Entities/Tables and Attribute/Columns are identical.
    So I changed the Naming Standard of the Logical Model in Preferences
    from Separator = Space to Separator = Character with char = Underline.
    If the entity is not existing, it is created with the correct name.
    If the entity exists, a new entity is created with Namev1.
    The same happens when I try to update changes in the other direction.
    How can I achieve that the existing entity (or table) is updated and not a new one is created?
    Or in other words, is there a way to link entities to corresponding tables?
    Walter

    Hi Walter,
    The Logical Model was imported from Oracle Designer, the Relational Model was imported from data dictionaryit's good to import entities and related tables from Designer repository together. Data Modeler will import the link between them and use that link in synchronization between logical and relational model. After that you can import details for physical model from database.
    If you don't have tables in Designer repository and keep the same names for entities, attributes, tables and columns then you can engineer logical model to relational and import details from database.
    Philip

  • Strange mapping of Boolean from Logical to DB2 Relational model

    Hi guys,
    Using most recent version of Data Modeler (3.3.0.747) I notice strange behavior:
    Attribute, declared as Boolean in Logical model is engineered to a column, with type CHAR(1) in Relational Model, when "RDBMS Type" is Oracle, but when "RDBMS Type" is "DB2", column type is CHAR(254)
    Is this a bug or a feature?
    Is there any way, where I can control type mapping between logical and relational model?
    Well, I can just go and change CHAR(254) to CHAR(1) all over my Relational Model, but this is pretty frustrating.
    MfG,
    Stoyan Tsonev

    Hi Stoyan,
    Is there any way, where I can control type mapping between logical and relational model?In fact mapping is between logical data type and database native types - Tools>Types Administration.
    You need to change mapping for Boolean logical data type - check "size" check box and put value in text field to define default size. Default size will be used when there is no explicitly defined size in column/domain definition.
    Philip

  • Issue with Engineer Multidimensional Model from Oracle Model

    Here is the scenario:
    1. Created logical star schema model including a dimension with nested subtypes (SuperTypeEntity1 -> Subtype 1 -> Nested Subtype 2)
    2. Forward engineer to Relational model using Single Table implementation
    3. Create Oracle 11g physical model definitions for the star
    4. Define dimension, levels, and hierarchy in physiclal model
    5. Create new multidimensional model, right click menu and execute "Engineer from Oracle Model"
    Result:
    Model and diagram built with correct dimension, levels, level attributes, hierarchy
    Problem: The entity that the dimension levels are related to is the subtype entity that appears first alphabetically! What it should do is be related to the SuperTypeEntity since I used the Single Table implementation (IMO). I can manually change the property to pick the SuperType but then it loses the assignments for the Level Key and the Descriptive Attributes (which were defined in the physcial miodel) so I have to manually repopulate those properties.
    Associated problem: Since I tend to do things incrementally (define a few dimensions at a time), everytime I re-run the engineering utility, it resets the dimension back to the wrong subtype everytime. (I like the fact that I can rebuild the multidimensional model iteratively to incorporate changes, but in this case it would be nice to "lock in" my manual changes).
    My only work around at this point is to either only run the engineering utility once (which is pretty impractical) or temporarily prefix my super type entity with an "A" so it always comes up first in the list until I am done with all my iterations.

    Hi Kent,
    dimensional model is not well suited to use entity hierarchies.
    I can manually change the property to pick the SuperType but then it loses the assignments for the Level Key and the Descriptive Attributes (which were defined in the physcial miodel) so I have to manually repopulate those properties.It seems all your key and descriptive attributes are in SuperTypeEntity1 (the root of hierarchy). How to proceed if some attributes (key +descriptive) are in subtypes, should SuperType be set as level entity again?
    Philip

Maybe you are looking for