Database Design and Development course provides students with a foundation of knowledge needed to work with database management systems and to create applications utilizing current development strategies. Students examine various types of database techniques with emphasis on relational designs. Students design and implement solutions to business-related problems.
By the end of this course, The leaner should be able to:
- Describe different methods for analysing and designing databases
- Design and develop a database using a variety of modelling techniques and tools
- Implementing databases from different models
- Setting primary keys, surrogate and composite keys, foreign keys
- Given a scenario, come up with database and normalize to the third normal form Identify and resolve anomalies
- Analyze a business problem and develop data management requirements;
- Develop a conceptual model to meet the problem requirements, using an Entity-Relationship diagram or another conceptual modeling tool (UML);
- Apply normalization to reduce/eliminate redundancy in database design; and
- Implement the conceptual model in a commercial relational database, such as MS Access, MS SQL, MySQL.
Chapter 1: Introduction to Database Concepts
Outline
- Types of Databases and Database Applications
- Basic Definitions
- Typical DBMS Functionality – Example of a Database (UNIVERSITY)
- Main Characteristics of the Database Approach
- Database Users
- Advantages of Using the Database Approach
- Download Class Notes: Chapter1 – Introduction To Database Concepts ;
Chapter 2: Database System Concepts and Architecture
Outline
- Data Models and Their Categories
- History of Data Models
- Schemas, Instances, and States
- Three-Schema Architecture
- Classification of DBMSs
- Download Notes: ch02-Database System Concepts and Architecture
- Data Independence
- DBMS Languages and Interfaces
- Database System Utilities and Tools
- Centralized and Client-Server Architectures
Chapter 3: Data Modeling Using the Entity-Relationship (ER) Model
Outline
- Overview of Database Design Process
- Example Database Application (COMPANY)
- ER Diagrams – Notation
- ER Diagram for COMPANY Schema
- Alternative Notations – UML class diagrams, others
- Download Class Notes: ch03-Data Modeling Using the Entity-Relationship (ER) Model
- ER Model Concepts
- Entities and Attributes
- Entity Types, Value Sets, and Key Attributes
- Relationships and Relationship Types
- Weak Entity Types
- Roles and Attributes in Relationship Types
Chapter 4: The Relational Data Model and Relational Database Constraints
The main construct for representing data in the relational model is a relation. A relation consists of a relation schema and a relation instance. The relation instance is a table, and the relation schema describes the column heads for the table. We first describe the relation schema and then the relation instance. The schema specifies the relation’s name, the name of each field (or column, or attribute), and the domain of each field. A domain is referred to in a relation schema by the domain name and has a set of associated values.
We now turn to the instances of a relation. An instance of a relation is a set of tuples, also called records, in which each tuple has the same number of fields as the relation schema. A relation instance can be thought of as a table in which each tuple is a row, and all rows have the same number of fields.
The degree, also called arity, of a relation is the number of fields. The cardinality of a relation instance is the number of tuples in it.
Class Notes: Chapter 4
Class Exercise: RELATIONAL DATABASE EXERCISE