Delete rule from logical to relational model

hello!
I use data modeler Version 3.1.0.700 and I have some problems with delete rule.
I have set delete rule in logical model on every relation (NO ACTION) but when i engineer it to relational there is everything randomized.
How do i change this to be as it is in logical model?
Thank you for your answer in advance!
Grega

as I explained in previous post "delete rule"in logical model is used in only one case:
the setting in logical model is used only when relationship will be transformed into optional foreign key with non mandatory FK columns.Settings in compare/copy options" tab are used to exclude some properties from compare and engineer process.
Philip

Similar Messages

  • Propagate a deleted attribute from Logical to Relational

    SQL Developer Data Modeler 4.0.0.825
    Hi. From what I gather from the manual, when we delete an attribute from an entity in the Logical model, then Engineer the Relational model, the change should be detected and allow up to decide how the chage is handled in the "Synchronization of Deleted Objects" table of the Engineer to Relational wizard.
    But the deletion is not showing in "Synchronization of Deleted Objects" and it does not get deleted in the Relational Model.
    Here's what I am doing.
    Create the "Library" model in the SQL Developer Data Modeler tutorial
    Engineer a Relational Model
    Add a new attribute "Date of Birth" to the Patrons entity in the Logical
    Re-Engineer the Relational (new column is created)
    Delete "Date of Birth" from Patrons in the Logical model
    Re-engineer Relational
    There are no little "change" icons in the comparison screen - it looks like there are no changes at all
    Nothing appears in the Synchronization of Deleted Objects tab
    When I click "Engineer", there Date_of_Birth column is not deleted from the Relational model
    Am I doing something wrong?
    If I reverse engineer from Relational back to Logical, it DOES identify the Date_of_Birth column as a difference and it wants to copy it back to the Logical.

    Hi Ross,
    you need to download DM 4.0 production release (4.0.0.833) - it should work there.
    Philip

  • Engineering to and from logical and relational models

    I have tried to modify a logical model entity by adding an attribute or two, tried to engineer to the associated relational model, only to have the engineering process create a brand new table rather than adding the new column or two to the existing table.
    Creating the column in the table first and engineering back to the logical model didn't appear to do anything, although I might have missed a new logical entity.
    Is this how the product is supposed to work?

    Hello,
    I'm sorry but your steps are not evident for me.How it works - you can start from table or entity, it doesn't matter which one is first you should be able to synchronize changes.
    Let's assume you have two relational models RM1 and RM2 and table TABLE_1 in RM1. if you engineer RM1 to logical model then entity will be created that corresponds to TABLE_1 in RM1 (and it will be named TABLE_1 if you don't use glossary that provides replacement of TABLE with something else).
    You can add attribute to entity and engineer logical model to other relational model (RM2) - new table will be created in RM2.
    Add one more attribute to entity and engineer to RM1 - two attributes will appear showing that two new columns can be created - they are not selected and you have to select them if you want columns to be created.
    You'll get only one new attribute (column) if you engineer to RM2 - the first added attributed is already there as column.
    Of course you can add columns in tables and can synchronize them with entity in logical model.
    Philip

  • Column Prefix from Logical to Relational Model

    Hi,
    is there any option, that data modeler append an prefix (table short name) to a column, when the logical model will be transformed to relational model? (Same behavior as Oracle Designer)
    Example:
    Logical Model
    TABLE: PERSON
    TABLE-SHORT: PERS
    COLUMN-1: ID
    COLUMN-1: NAME
    Relational-Model
    TABLE: PERSON
    COLUMN-1: PERS_ID
    COLUMN-2: PERS_NAME
    Kind Regards,
    Stefan

    Thanks for your answer!
    This Script is not really working for me, because of our foreign keys.
    All our Foreign-Keys are named "ID" (for nummeric column) or "INDEX" (for a varchar column). After the transformation form logical to relational all the foreign-keys are named like "ID1", "ID2", "ID3", "INDEX1", "INDEX2" etc.
    There is no way to apply this script before the foreign-keys where added in the tables?
    The Second Way is to create a new script for this task.
    am i the only one with this problem? :-/

  • Views always appear as different when engineering from Logical to Relational

    I created some views in my logical model. After I engineer them to relational model, they appear in relational with an exclamation mark near the upper left corner. If I try to generate ddl for them, I get an error (--  ERROR: Invalid View VwTest). I realized that I have to "validate selected views", in order for the eclamation mark to disappear, and then I am able to generate ddl for them. After that, when I engineer from logical to relational again, it always shows me that my views are different. The difference is that in logical, my entities are shown between double quotes ("), while in relational, after the validation, the tables are not between double quotes. Is there a way to overcome this?
    Thanks

    Hi,
    Thanks for reporting this problem.  It appears that this is happening when the Entity name contains lower-case letters.
    David

  • 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

  • FWDEngineering.execute() nullpointerException when engineering from logical to physical model

    Dear Community,
    During the "engineer to relational model" from the logical model I got a long time the correct behaviour.
    Now I get the following error in the log file: "ERROR FWDEngineering - FWDEngineering.execute()" NullpointerException
    The model is not that large but contains a number of entities with sub-entities for which I set the way of implementation to generate a single table.
    Test 1: Restart
    Removing the model has not solved the problem for this ... (delete entire relational model)
    Test 2: reset subtype implementation to default behaviour
    So on the level of the super entity the following settings are set on the subtype property page:
      - subtree do not preset
      - No Discriminator column
      - no 'use attribute' selected
      - no column name set,
    The model generates the foreign keys ... and gives no error.
    Test 3 : setting discriminator.
    Juglin' around with the properties I noticed that when after starting from test 2 and setting the property "generate discrimator" *and* selecting the name of the discriminator colomn the error can be reproduced. Currently I do not know fit the setting subtree together with discriminator column is logically correct ... but I get the stacktrace ;-)
    Test 4 : can the subtree generation mode solve it -> Seems I'm not able to set it to an other value than "do not preset" anymore.
    Version datamodeler is 4.0.0.833
    Test 5 : Created a smaller model ... and tested if the foreign key generation in itself caused the problem. Removing the relationship with a subentity does not cause the problem to not occur ...
    At this moment in time ... it seems to me I cannot set the mode to generate the master entity and its subs to one table anymore.
    What am I doing wrong?
    ... and anyway ... there is a stacktrace ;-)
    Has anyone some solution/experience with this?
    For the completeness ... the stacktrace, which shows a processDiscriminatorColumn ....
    Oh yes ... also for completeness: in the test with a subentity not having a relationship the method calling the processDescr... is a different one inheritancePostProcessingNew() ...
    Thanks you all.
    2014-01-30 18:35:39,795 [AWT-EventQueue-0] ERROR FWDEngineering - FWDEngineering.execute()
    java.lang.NullPointerException
      at oracle.dbtools.crest.model.design.engineering.FEEntityHierarchy.processDiscriminatorColumn(FEEntityHierarchy.java:592)
      at oracle.dbtools.crest.model.design.engineering.FEEntityHierarchy.createFKeysNew(FEEntityHierarchy.java:921)
      at oracle.dbtools.crest.model.design.engineering.FEEntityHierarchy.inheritancePostProcessingNew(FEEntityHierarchy.java:861)
      at oracle.dbtools.crest.model.design.engineering.FWDEngineering.processEntities(FWDEngineering.java:275)
      at oracle.dbtools.crest.model.design.engineering.FWDEngineering.execute(FWDEngineering.java:107)
      at oracle.dbtools.crest.model.design.Design.forwardEngineer(Design.java:895)
      at oracle.dbtools.crest.swingui.engineeringcompare.EngineeringCompareDialog.engineer(EngineeringCompareDialog.java:992)
      at oracle.dbtools.crest.swingui.engineeringcompare.EngineeringCompareDialog.access$3200(EngineeringCompareDialog.java:125)
      at oracle.dbtools.crest.swingui.engineeringcompare.EngineeringCompareDialog$22.actionPerformed(EngineeringCompareDialog.java:1777)
      at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
      at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
      at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
      at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
      at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252)
      at java.awt.Component.processMouseEvent(Component.java:6505)
      at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
      at java.awt.Component.processEvent(Component.java:6270)
      at java.awt.Container.processEvent(Container.java:2229)
      at java.awt.Component.dispatchEventImpl(Component.java:4861)
      at java.awt.Container.dispatchEventImpl(Container.java:2287)
      at java.awt.Component.dispatchEvent(Component.java:4687)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
      at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
      at java.awt.Container.dispatchEventImpl(Container.java:2273)
      at java.awt.Window.dispatchEventImpl(Window.java:2719)
      at java.awt.Component.dispatchEvent(Component.java:4687)
      at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
      at java.awt.EventQueue.access$200(EventQueue.java:103)
      at java.awt.EventQueue$3.run(EventQueue.java:694)
      at java.awt.EventQueue$3.run(EventQueue.java:692)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
      at java.awt.EventQueue$4.run(EventQueue.java:708)
      at java.awt.EventQueue$4.run(EventQueue.java:706)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
      at oracle.javatools.internal.ui.EventQueueWrapper._dispatchEvent(EventQueueWrapper.java:169)
      at oracle.javatools.internal.ui.EventQueueWrapper.dispatchEvent(EventQueueWrapper.java:151)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:154)
      at java.awt.WaitDispatchSupport$2.run(WaitDispatchSupport.java:182)
      at java.awt.WaitDispatchSupport$4.run(WaitDispatchSupport.java:221)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.awt.WaitDispatchSupport.enter(WaitDispatchSupport.java:219)
      at java.awt.Dialog.show(Dialog.java:1082)
      at java.awt.Component.show(Component.java:1651)
      at java.awt.Component.setVisible(Component.java:1603)
      at java.awt.Window.setVisible(Window.java:1014)
      at java.awt.Dialog.setVisible(Dialog.java:1005)
      at oracle.dbtools.crest.swingui.engineeringcompare.EngineeringCompareDialog.show(EngineeringCompareDialog.java:1766)
      at oracle.dbtools.crest.swingui.browser.BrowserPanel$41.actionPerformed(BrowserPanel.java:1145)
      at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2018)
      at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2341)
      at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
      at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
      at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
      at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:833)
      at com.apple.laf.AquaMenuItemUI.doClick(AquaMenuItemUI.java:157)
      at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:877)
      at java.awt.Component.processMouseEvent(Component.java:6505)
      at javax.swing.JComponent.processMouseEvent(JComponent.java:3321)
      at java.awt.Component.processEvent(Component.java:6270)
      at java.awt.Container.processEvent(Container.java:2229)
      at java.awt.Component.dispatchEventImpl(Component.java:4861)
      at java.awt.Container.dispatchEventImpl(Container.java:2287)
      at java.awt.Component.dispatchEvent(Component.java:4687)
      at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
      at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4492)
      at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
      at java.awt.Container.dispatchEventImpl(Container.java:2273)
      at java.awt.Window.dispatchEventImpl(Window.java:2719)
      at java.awt.Component.dispatchEvent(Component.java:4687)
      at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
      at java.awt.EventQueue.access$200(EventQueue.java:103)
      at java.awt.EventQueue$3.run(EventQueue.java:694)
      at java.awt.EventQueue$3.run(EventQueue.java:692)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
      at java.awt.EventQueue$4.run(EventQueue.java:708)
      at java.awt.EventQueue$4.run(EventQueue.java:706)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
      at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
      at oracle.javatools.internal.ui.EventQueueWrapper._dispatchEvent(EventQueueWrapper.java:169)
      at oracle.javatools.internal.ui.EventQueueWrapper.dispatchEvent(EventQueueWrapper.java:151)
      at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
      at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
      at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
      at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
      at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)

    Hi ViForEver,
    thanks for detailed report. We also found the problem in engineering of entity hierarchy when existing attribute is used as discriminator column. No such problem when leave DM to create new discriminator column.
    Problem is fixed and fix is included in the forthcoming patch release.
    About your questions/observations:
    can the subtree generation mode solve it -> Seems I'm not able to set it to an other value than "do not preset" anymore
    Generation of table for given entity depends on "Engineer to" flag and it can have different value for each relational model. If the flag is checked then table will be generated for that entity
    otherwise attributes will be implemented by another entity down or up in the hierarchy. So two combo boxes in "Entity and sub-tree generation preset" help you to set that flag for entity
    and it's sub-tree. It's functionality behind them, not properties so they are always in initial state when you reopen dialog.
    Currently I do not know fit the setting subtree together with discriminator column is logically correct
    They are related - discriminator column won't be generated:
    1) if you go for sub-types implementation
    2)implement all entity but "References" is set to arc implementation.
    Philip

  • DM3.0 EA2: Filter engineering changes between logical and relational model

    Hi,
    when I am engineering changes between logial and relational model there are some issues at filter handling for me:
    - When the filter "Show Modified Objects" is activated, the filter works only on the first level, e.g. on Entity level. On attribute level all attributes are displayed, not only the attributes which have really been modified. It is possible, to show on every level only the really modified objects?
    - I think, selecting a Filter condition is circuitous. All filter conditions except "Show All Objects" keeps activated when I choose another condition. So I have to deactivate "Show Deleted Objects" when I want to see only the modified objects. It is possible to choose another control element for filtering, e.g. disjunctive radio buttons?
    I am running Data Modeler on Windows XP with german localization and the JDK 1.6.0_11 from Oracle SQL Developer.

    I logged bug for that.
    Philip

  • New Guy Question about Name Changes from Logical to Relational

    Sorry for the "New Guy" question. I am trying to do this the way I wished it worked rather than the way it does.
    Lets say I have an Entity named "Current Database" with an Attribute named "Current Database Name". All this is in plan english for the Logical Model. Now when I generate the Relational Model I would like the Table named "CDCD_CURRENT_DB" and the column named "CURRENT_DB_NAME".
    I have been working with a Glossary and some other features trying to get this to work. It kind of does but I do not fully get it and I think I am missing out on much of the power of the product. I have been forcing the Nickname "CDCD" (As we call it) and the "Database" to "DB" in the "Preferred Abbreviation" of the Entity.
    I am working with v3.3.0.734
    Thanks for the help.

    Hi Sky13,
    it can be done with glossary but it looks to me what you want is not that native to glossary approach.
    it's good to look here for basics http://www.oracle.com/technetwork/developer-tools/datamodeler/datamodelernamingstandards-167685.pdf
    Example here also could be useful if you want to go with glossary - Re: Data Modeler: Naming
    If you want to use preferred abbreviation then it should be CDCD_CURRENT_DB.
    For me CDCD_ is just a prefix - you can handle it separately in relational model - on whole model, on subview and in both cases classification types also can be used to determine how objects are prefixed.
    You don't want Current to be abbreviated then do not put it in glossary however you need to check "Incomplete modifiers" check box in glossary.
    Entity property "Short name" goes to table abbreviation during engineering. There is a transformation script which will prefix table columns with table abbreviation if you need it. And another one can remove the prefix.
    You can define plural name in glossary and if entity name is a single word then plural will be used during name translation.
    Philip

  • How to apply a change from logical to retional model without populate eryth

    How to apply a change from logical model to retional model without populate everything? Thanks!

    I know it. Thanks!

  • Delete games from 106 or 1280 models

    dear all.
    would like to buy phone for child. need to disable or delete games from OS. could I do it with 106 or 1280 models?

    Hi, evgeniss. Welcome to the Nokia Support Discussions. Pre-installed games are integrated with the phone's software, thus cannot be configured or removed.

  • DM 3.0.0.665 / Can't delete schema information from PK in relational model

    I’m trying to erase schema infromation from primary keys in relational mode by opening Primary Key Properties window and selecting the empty line from “Schema” pull down menu. When I click OK I get the following: "There is a Foreign Key on this Key. The status cold be PK or UK only". I didn’t change anything else, only tried to clear the schema information. This does not happen with every primary key, only some of them, but I haven’t figured out how they differ from each other.
    I managed to clear schema information from some primary keys by deleting the schemaObject tag from the xml file. But I still have few primary keys left that didn’t have the schemaObject tag in xml and still have schema name in Primary Key Properties, and I’m not able to choose empty from the Schema pull down menu

    Hi,
    Thanks. I logged a bug on this. It looks like the problem is occurring if there is a Foreign Key relationship to the Table with the PK.
    David

  • Engineering (logical to relational) does not do name translation/variable population as expected

    I am using OSDDM 3.3.0.747.
    I have set up the following template formats, e.g.
    Foreign Key: {table}_FK{seq nr}
    Unique Constraint: {table}_UK{seq nr}
    When I engineer from logical to relational model, I get generated names like the following:
    {TABLE}_FK3
    TENANTS_UK{SEQ_NR}
    TENANTS_UK{SEQ_NR}v1
    How do I stop this from happening?

    Hi,
    thanks for reporting the problem. I logged a bug for problem related to Unique constraint.
    For foreign key - there is no variable {table} in template  for FK. You can use {child} or {child abbr} instead.
    As workaround for Unique constraint - you can apply naming standards for whole relational model - "Apply Naming standards for Keys and Constraint" in context menu for relational model in browser, or at table level - table dialog
    Philip

  • Engineer to Relational Model case sensitive?

    I developed my database in the Logical Model using Upper and Lower case. When I`m engineering from Logical to Relational Model, it keeps showing me that all atributes have their names wrong and marks them for change in the relational model. Is there a way to inform data modeler to not consider the change in case as differences?

    The thing is that in the Relational Model, all objects are beeing generated in uppercase. When I'm going to update the relational model by enineering from Logical, the program always shows me that the column names are different, when they are not, because the only difference is case! There is already a parameter for the engineering not to test for different case in the entity's name, but no parameter for it in the atribute's name!

  • Data Dictonary generation from SQL Developer Data Modeler.

    Hi,
    How can I generate a comprehensive data dictionary using this tool in a flexible way? I tried with Export -> To CSV option but it generated lot of CSV files with lot of unnecessary information which are frustratingly scattered.
    regards,
    Dipankar.

    Hi Dipankar,
    "Export to CSV" is oriented to reporting, thus things are denormalized there. Information from logical and relational models is there, domains and logical types, usage of entities and attributes in data flows and processes in data flow diagrams. Export provides snapshot of your design and references there are valid for that snapshot.
    Best regards,
    Philip

Maybe you are looking for

  • Struts Error while loading a page

    Hi Friends, In our aplication when i try to load a page am getting the following error , please throw some light if you have come across any such exception: <Error> <HTTP> <101017> <[ServletContext(id=22376268,name=QS,context-path=/QS)] Root cause of

  • Netweaver 7.2 CE Trial working with Strategy Mgmt 10.0 ?

    Thank you in advance - We are working with Strategy Management 10.0 / 7.5 ; we are only seeing 64 bit available for download.   In order for us to leverage Strategy Management we are required to have Netweaver 7.1 sp 6 or greater. For us to test our

  • Multiple computers, one shared library + music

    What's the easiest way to keep a library updated and shared between multiple machines on the same network? All the files are on my server. I need a library on my server (which is always on) so I can stream itunes from there to my airport express. How

  • Scheduled Planner tasks and control validity

    Use case is outlined below: Local Control A is valid from 1/1/14 to 12/31/14. I'm trying to schedule a planner task with activity 'Test Control Effectiveness' for this local control. The task being scheduled is a recurring task starting from 1/1/15 t

  • How to register EEM Tcl script

    Hello, I've a EEM tcl script in bootflash. How to register EEM script. I did the following but it couldn't locate the script in bootflash. switch2(config)#event manager policy bootflash:eem-stuckcpu.tcl type user EEM configuration: policy file bootfl