Database Fundamentals: INFM 603 - Information Technology and Organizational Context
Database Fundamentals: INFM 603 - Information Technology and Organizational Context
Database Fundamentals
A Database Schema
Schema Owner
[1]
Tables
Indexes
Procedures
Views
Constraints
schema objects
1) Stephens, R.K. and Plew. R.R., 2001. Database Design. SAMS, Indianapolis , IN. (with slight changes by V.G.D.)
Table
A table is the primary unit of physical storage for data in a database.1
Usually a database contains more than one table.
1) Stephens, R.K. and Plew. R.R., 2001. Database Design. SAMS, Indianapolis , IN.
Table
Authors
Inventory
Orders
1) Stephens, R.K. and Plew. R.R., 2001. Database Design. SAMS, Indianapolis , IN. (with slight changes by V.G.D.)
Table
Customers
Field (Column)
Customers
a field
Record (Row)
Customers
a record
Primary Key
Customers
primary key field Primary key is a unique identifier of records in a table. Primary key values may be generated manually or automatically.
10
Primary Key
Roles (Performances)
11
Foreign Key
Directors
parent table
relationship
child table
Movies
12
Relationship Types
One-to-one
One-to-many Many-to-many
13
Data Types
Alphanumeric (Text, Memo) Numeric (Number, Currency, etc.) Date/Time Boolean (Yes/No)
14
Entity
An entity is a business object that represents a group, or category of data.1 Do we know a similar concept?
1) Stephens, R.K. and Plew. R.R., 2001. Database Design, pp. 21. SAMS, Indianapolis , IN.
15
1) Stephens, R.K. and Plew. R.R., 2001. Database Design, pp. 210. SAMS, Indianapolis , IN.
16
Attribute
An attribute is a sub-group of information within an entity.1
Do we know a similar concept?
1) Stephens, R.K. and Plew. R.R., 2001. Database Design, pp. 21. SAMS, Indianapolis , IN.
17
Relationship
A relationship is a link that relates two entities that share one or more attributes.
Do we know a similar concept?
18
OO Design DB Design
Class Object Attribute Association Entity (Table) Record Attribute (Field) Relationship
19
Database Environments
Mainframe
Client/Server Internet-based
20
Database Types
Flat-file Hierarchical Network Relational Object-oriented Object-relational
21
Normalization
A method for organizing data elements into tables. Done in order to avoid
Duplication of data Insert anomaly Delete anomaly Update anomaly
23
We will look at
First Normal Form
Second Normal Form Third Normal Form
24
Example (Unnormalized)
Table: SalesOrders (Un-normalized)
SalesOrderNo Date CustomerNo CustomerName CutomerAddress ClerkNo ClerkName Item1Description Item1Quantity Item1UnitPrice Item2Description Item2Quantity Item2UnitPrice Item3Description Item3Quantity Item3UnitPrice Total
25
26
Example (1NF)
Table: SalesOrders
SalesOrderNo Date CustomerNo CustomerName CustomerAddress ClerkNo ClerkName Total
Table: OrderItems
SalesOrderNo ItemNo ItemDescription ItemQuantity ItemUnitPrice
27
Dependencies
Functional dependency: The value of one attribute depends entirely on the value of another. Partial dependency: An attribute depends on only part of the primary key. (The primary key must be a composite key.) Transitive dependency: An attribute depends on an attribute other than the primary key.
29
Example (2NF)
Table: OrderItems
SalesOrderNo ItemNo ItemQuantity ItemUnitPrice
Table: InventoryItems
ItemNo ItemDescription
30
Example (3NF)
Table: SalesOrders
SalesOrderNo Date CustomerNo ClerkNo Total
Table: Customers
CustomerNo CustomerName CustomerAddress
Table: Clerks
ClerkNo ClerkName
33
Table: InventoryItems
ItemNo ItemDescription
Table: Customers
CustomerNo CustomerName CustomerAddress
Table: OrderItems
SalesOrderNo ItemNo ItemQuantity ItemUnitPrice
Table: Clerks
ClerkNo ClerkName
35