Using ER/Studio
Modeling a Relational Database Using ER Studio We will use ER Studio as the modeling Tool to build ER diagrams. ER Studio Is a CASE tool providing a Repository (or System Catalog) of an organization’s databases Fully specified logical models in ER studio can be used to generate DDL the code of the create tables statements
Getting to ER Studio Data Architect Enter ERS in the Search are of the start menu Click on the ER Studio Data Architect 9.6 icon Click on tools in the top menu and then select options from the drop-down menu
Set Options to Produce Crow’s-Foot Notation Pick logical Pick options from tools drop-down Choose Crow’s feet notation
Create a New Model Select File from the top menu and new from the drop down On the dialog box, ensure that Draw a new data model is checked and that relational is selected, then click OK
Select an Entity to Add
Entity Editor Name the entity then make sure that the Attributes tab is selected and click the Add button to add attributes
Can specify derived attributes and check this box Adding Attributes Can specify derived attributes and check this box For each attribute specify its name, select a datatype from the listbox, select the column width and check whether nulls are to be allowed for the attribute. Check this box if the attribute is the primary key (or a part of the PK)
Other Attribute Properties Add Default value using the Default tab Simply add the default value: e.g. a system variable as shown or a ‘Y’ for a flag variable, etc. Add check constraints using the rule/constraint tab Note that a constraint name can be specified Check Constraint Value is the full condition to be applied by the Check constraint The @var begins the constraint condition with the attribute name & we just finish out the condition
Adding Relationships by Type identifying Non- identifying Optional Non-identifying Mandatory
Relationship Types Identifying Non-identifying Mandatory Strong relationship child entity is a weak entity Primary key of 1st entity becomes a foreign key and part of the primary key of 2nd entity clicked. Non-identifying Mandatory Weak relationship child entity is a strong entity Primary key of 1st entity specified becomes a foreign key in 2nd entity and foreign key attribute is not null Non-Identifying Optional Weak relationship child entity is strong Primary key of 1st entity specified becomes a foreign key in 2nd entity, but the foreign key attribute can be null.
Editing Relationship Properties Auto add of FK
Identifying Relationship Specification For identifying relationships, Primary key of parent is automatically added to primary key of the child table To complete this specification Phone_No should be added to the primary key of PATRON_PHONE
Creating a Sub-Class Hierarchy First create the Super-Class and sub-Class entities Add at least the primary key to the super-class entity From the insert Drop-down, select sub-type cluster, then pick either complete or incomplete Click on the super-class entity Control-click on the first subclass entity & continue until all sub-class have been linked in (see next slide for menu option, following slide for result.)
Choose complete (all super-type members must belong to a sub-type, or incomplete
Right click & pick edit subtype cluster to get this Dialog box
Saving the Model Change to desired J drive space
Generating the Physical Model
Physical Model for Oracle
Generated SQL for Data Definition Language -- -- TABLE: ormCustomer CREATE TABLE ormCustomer( custnumber NUMBER(10, 0) NOT NULL, name VARCHAR2(20), CONSTRAINT PK1 PRIMARY KEY (custnumber) ) ; -- TABLE: ormOrder CREATE TABLE ormOrder( ordernumber NUMBER(10, 0) NOT NULL, orderdate DATE NOT NULL, total NUMBER(10, 0), custnumber NUMBER(10, 0) NOT NULL, CONSTRAINT PK2 PRIMARY KEY (ordernumber) ALTER TABLE ormOrder ADD CONSTRAINT ReformCustomer31 FOREIGN KEY (custnumber) REFERENCES ormCustomer(custnumber)