This course aims to make students:
- Become familiar with database language and terminology
- Explore the different database models
- Understand the fundamentals of the Relational model
- Become familiar with the Entity Relationship model and construct E-R Diagrams
- Understand the concept of Normalization and normalize database tables
- Understand and effectively use SQL commands to create and manipulate database objects
- Explore current trends in database management
Students will be required to develop a database application utilizing the course concepts and techniques
Overview of Database Systems: model, schema, instance. Database system vs. File systems. Data abstraction levels, database languages, system architecture. Classification of DBMS.
Data Modeling: Entity-Relationship (ER) Model, Entities and Entity types, Relationship and Relationship type, Constraints, Weak Entity Types, ER, Diagrams. Semantic object model.
Process of Database Design: normalization, requirement analysis, conceptual database design, database schema design. Database design using entity-relationship and semantic object models, database application design.
Structured Query Language (SQL): DML Features in SQL, DDL in SQL, updates in SQL, Views in SQL, Embedded SQL, Query-by-Example (QBE). Concurrency, recovery and security issues. Armstrong’s inference rules and minimum covers, normal forms.
Current Trends in Database Systems: Client-Server
- Microsoft Access
- Microsoft Visio
- Coronel et al (2011). Database Systems: Design, Implementation, and Management. 9th Edition
- Useful Websites: