Forum Stats

  • 3,875,897 Users
  • 2,266,986 Discussions
  • 7,912,374 Comments

Discussions

General questions about SQL Developer Data Modeler

Hello,

I am currently looking for an alternative to SAP PowerDesigner for our developer team. I have two questions regarding SQL Developer Data Modeler.

We are looking for a product that allows for automated creation of triggers for certain columns in a table. More precisely, for example if a user updates a table record, then its field USER should be updated with the username and its field UPDDATE should be updated with the current date. The trigger that does this should be created automatically by the application when creating a table. Does Data Modeler have any such feature or does it at least allow for the definition of custom extension scripts for that purpose?

The second question I have is whether or not it is possible to use version control for the graphical representation of the databases such that after pulling a new version from the repo, the graphical representation does not have to be generated again but instead is pulled as well in the newest version.

Answers

  • Marcus B
    Marcus B Member Posts: 93 Bronze Badge

    Does Data Modeler have any such feature or does it at least allow for the definition of custom extension scripts for that purpose?

    SDDM has a very powerful transformation interface that allows you to do almost anything when generating DDL. I have a DDL Transformation Script, written in JavaScript, that searches tables for audit column names and if an audit column is discovered, a trigger is created to populate the created audit fields on insert and the updated audit fields on update. I create the audit columns on appropriate tables using a template table when engineering my conceptual models to relational. If the DDL Transformation Script does not find audit columns in a table, it will generate a journal table and create the trigger to populate the audit table on insert, update and delete. If you know JavaScript or someone on your team knows it, you should have no problem generating DDL statements to do almost anything. I am not a JavaScript programmer but was able to follow the examples and ask a few questions in this community and write my script.