Short course on using Visio 2016 to create an Entity Relationship Diagram (ERD). Covers entities, attributes and relationships: 1 to 1, 1 to many, many to many and recursive.
Junnasandra Call Girls: 🍓 7737669865 🍓 High Profile Model Escorts | Bangalore...
VIS201d Visio Database Diagramming
1. VIS201D Visio Database Digramming 1
An introduction to Visio database diagramming
for analysts and IT professionals
P.O. Box 6142
Laguna Niguel, CA 92607
949-489-1472
http://www.ocdatabases.com
Welcome to VIS201D – Visio
Database Diagramming
Bookstore2
2. VIS201D Visio Database Digramming 2
Visio Database Diagramming
• Introduction (s)
• Facilities
• Course Packet (contents may vary)
– Student questionnaire
– Collaterals (Maps, Catalogs, Etc.)
– PowerPoint handouts
– Evaluation form
– Training certificate
Bookstore2
3. Bookstore2 VIS201D Visio Database Digramming 3
VIS201D Contact Information
P.O. Box 6142
Laguna Niguel, CA 92607
949-489-1472
http://www.ocdatabases.com
slides.1@ocdatabases.com
Copyright 2017. All rights reserved.
4. VIS201D Resources
• Bookstore database scripts found on
box.net at
http://tinyurl.com/SQLScripts
• Slides can be viewed on SlideShare…
http://www.slideshare.net/OCDatabases
• Follow up questions?
support@ocdatabases.com
Bookstore2 VIS201D Visio Database Digramming 4
5. Visio Database Diagramming
• Entity Relationship Diagrams (ERD’s)
• Relational Databases
• Entities
• Attributes
• Relationships
– 1 to many
– Many to many
– 1 to 1
– Recursive
– IS-a (subtypes)
Bookstore2 VIS201D Visio Database
Digramming
5
6. VIS201D Visio Database Digramming 6
Visio Database Diagramming
• Course focus is using Visio to create an
ERD (Entity Relationship Diagram)
• Widely used for:
– Database development
– Database administration
• ERD’s are a foundation skill for work in
the Database field much like SQL
Bookstore2
7. VIS201D Visio Database Digramming 7
Visio Database Diagramming
• A basic knowledge of relational databases,
perhaps via MS Access, or some
programming knowledge, is desirable
Bookstore2
8. VIS201D Approach
• Create a complete ERD
– In this class using Visio; another class uses
Lucidchart on-line tool
• Step-by-step
• Use same bookstore database used in our
SQL classes
VIS201D Visio Database
Digramming
8Bookstore2
9. VIS201D Visio Database Digramming 9
Relational Database Evolution
• Based on Codd’s paper
• Early commercial efforts focused on Unix
• First mainframe implementation by IBM -
precursor to today’s DB2
• First PC implementation in early 80’s by
Oracle
Bookstore2
11. Database Design Models
(Entity Relationship Diagrams)
VIS201D Visio Database Digramming 11
We will start here
Bookstore2
12. Logical ERD Development
• Create entities
– Add attributes (fields)
– Set attribute properties (PK, FK, required)
• Draw the relationships from the parent
tables to the child tables
VIS201D Visio Database Digramming 12Bookstore2
13. ERD Development
• We will use the bookstore database used in our
SQL classes for our examples
• At this time we will just create two tables
– Customers
– Orders
• Although a little odd we will stick with the field
names used by the author
• These two tables are in a one-to-many
relationship
VIS201D Visio Database Digramming 13Bookstore2
14. VIS201D Visio Database Digramming 14
ERD Drawing Tools
• Embarcadero
• ER-WIN
• Visio (used in this class)
• Oracle Designer
• Many others
(Note: most tools use the crows-foot or similar model.)
Bookstore2
16. Start the Visio Drawing
• Start Visio and
select software
and databases
• Use the crow’s
foot notation
• Save your
drawing
VIS201D Visio Database Digramming 16Bookstore2
17. Initialize the Customer Entity
• Drag an entity
shape to the
drawing surface
• Zoom in to give
yourself some
working room
• Note by default
it set the 1st
attribute as the
primary key
VIS201D Visio Database Digramming 17Bookstore2
18. VIS201D Visio Database Digramming 18
Attributes
Customer entity
Customer
_numb
Customer_first_name Customer_last_name
12 Al Le
13 Bobby Jones
14 Carol Gomez
15 Hank Tartanian
166 Mary Park
167 Nancy Bocage
attributes
values
Bookstore2
19. Add remaining attributes
• Drag an
attribute shape
to the drawing
surface, or
• Click insert
attribute
VIS201D Visio Database Digramming 19Bookstore2
20. VIS201D Visio Database Digramming 20
Keys
• Derived from entity identifier
• One or more attributes (more = composite key)
• Uniquely determine a row
• Functionally determine an entire row’s
attributes
Bookstore2
21. Set attribute properties
• Mark any
attribute
properties such
as required or
primary key
• In our example
we only have
one required
field. This may
or may not be
realistic for
your databases.
VIS201D Visio Database Digramming 21Bookstore2
22. Add Orders Entity
• Conventions
used:
– Entity name in
caps
– Underline pk’s
– Italicize fk’s
– Bold required
fields
• Not necessary,
really, but can
be used to
create a sort of
text ERD
VIS201D Visio Database Digramming 22
• ORDERS
• Attributes (fields):
– Order_numb
– Customer_numb
– Order_date
– Credit_card_numb
– Order_filled
– Credit_card_exp_date
Bookstore2
23. Orders Entity
• Follow steps
used for
customers entity
• Note
customer_numb
marked as FK
(foreign key)
VIS201D Visio Database Digramming 23Bookstore2
28. Annotate relationship
• Annotate the
relationship if
desired
• Use two
phrases, one for
each direction
VIS201D Visio Database Digramming 28Bookstore2
29. VIS201D Visio Database Digramming 29
Physical Database Design
• Expand logical model with attribute
properties
• Translate model to the Database
– Entities -> tables
– Establish primary & foreign keys, indexes
– Many-to-many relations ->Junction tables
– Business rules -> triggers, constraints, etc.
• Typically done with a “CASE” tool
Bookstore2
30. Add attribute properties column
• Right click on
the table
• Select show
attributes to add
an attribute
properties
column
VIS201D Visio Database Digramming 30Bookstore2
31. Data Types
• int – whole number
• char (n) – fixed number of characters
• varchar (n) – variable number of characters
• float (m, d) – floating point with m digits, d after the
decimal point
• decimal (p, s) - fixed point with precision p, scale s
• datetime – date and time
• bit (n) – binary value with n bits
VIS201D Visio Database Digramming 31
See the documentation for your specific database for exact
details plus other supported data types
Bookstore2
33. Orders Physical Design
• Set properties
for all fields
• Note optional
text boxes IX
for indexed
field with
duplicates
allowed, and
UX for unique
VIS201D Visio Database Digramming 33Bookstore2
35. VIS201D Visio Database Digramming 35
Database Design
HasInvoice
One-to-many (w/ ID Dependency)
Inv #
1 N
Line Item
PK = inv#, item#
Bookstore2
36. Bookstore Database Physical
Design (1st
two tables)
• Final physical
design
• This would be
basis for
implementing
the tables
VIS201D Visio Database Digramming 36Bookstore2
37. Add Books Entity
• Conventions
used:
– Entity name in
caps
– Underline pk’s
– Italicize fk’s
– Bold required
fields
• Not necessary,
really, but can
be used to
create a sort of
text ERD
VIS201D Visio Database Digramming 37
• BOOKS
• Attributes (fields):
– isbn
– title
– publisher_name
– Publication_year
– binding
– source_numb
– retail_price
– number_on_hand
Bookstore2
38. Books Physical Design
• Set properties
for all fields
• Note optional
text boxes IX
for indexed
field with
duplicates
allowed, and
UX for unique
VIS201D Visio Database Digramming 38Bookstore2
39. Connect Books to Orders NXM
• Create relationship
between books and
orders
• Note this is a many
to many
relationship
• It may be OK on an
ERD but cannot be
implemented
directly in a
relational database
VIS201D Visio Database Digramming 39Bookstore2
40. VIS201D Visio Database Digramming 40
Database Design
Mfgr
Many-to-many
Mfgr_Eqpt
Equipment
M N
Mfg # Eqpt ID
Bookstore2
41. Add Orderlines Entity
• Conventions
used:
– Entity name in
caps
– Underline pk’s
– Italicize fk’s
– Bold required
fields
• Not necessary,
really, but can
be used to
create a sort of
text ERD
VIS201D Visio Database Digramming 41
• ORDERLINES
• Attributes (fields):
– order_numb
– isbn
– quantity
– cost_each
– cost_line
– shipped
Bookstore2
42. Orderlines Entity
• Set properties for
all fields
• Note order_numb
and isbn form a
single, composite
PK. Both columns
are in the PK.
VIS201D Visio Database Digramming 42Bookstore2
43. Bookstore 4 Table ERD
• This is a very
typical design
pattern
• All relationships are
now 1 to many
• Note intersection
table between
orders and books
VIS201D Visio Database Digramming 43Bookstore2
44. VIS201D Visio Database Digramming 44
Database Design
HasEmployee
Auto #
One-to-one
1
Auto
Emp #
1
Bookstore2
45. One-to-one demonstration
• There are no one-to-one relationships in
the bookstore database
• Instructor will demonstrate example
• Requires an FK with a unique index on it
VIS201D Visio Database
Digramming
45Bookstore2
46. VIS201D Visio Database Digramming 46
Recursive Relationships
Customer referrals
Customer_numb Customer_last_nam
e
Referred_by
12 Le 15
13 Jones 12
14 Gomez 13
15 Tartanian 166
166 Wang <null>
167 Park 166
Bookstore2
47. VIS201D Visio Database Digramming 47
Database Design
Referred byMember
Recursive
Member #
1
M
Bookstore2
48. Add referred_by to Customers
Entity
• Referred_by is the
customer that
referred this one
• The referred_by
field is a FK which
points back to the
PK in the same
customers table.
VIS201D Visio Database Digramming 48Bookstore2
49. Final Bookstore 4 Table ERD
• This is a very
typical design
pattern
• All relationships are
now 1 to many
• Note intersection
table between
orders and books
• There is a recursive
relationship
between customers
and itself
VIS201D Visio Database Digramming 49Bookstore2
51. IS-A Relationships
• There are no IS-A relationships in the
bookstore database
• PK’s in child and parent tables are the
same
• Instructor will demonstrate
VIS201D Visio Database
Digramming
51Bookstore2
52. Bookstore2 VIS201D Visio Database Digramming 52
VIS201D
End of Course
P.O. Box 6142
Laguna Niguel, CA 92607
949-489-1472
http://www.ocdatabases.com
Please fill out and turn in your
end-of-course evaluations.
Hinweis der Redaktion
Follow with student exercise to develop a database.