CS 486/586 Introduction to Database Management Systems
4/3
Jesse Chaney and Bruce Irvin
Introduction to fundamental concepts of database management systems using primarily the relational model. Schema design and refinement. Query languages. Database application development environments. Overview of physical data organization, query optimization and processing, physical design, security, and transactions used in recovery and concurrency control.
CS 161 and CS 250. Recommended prerequisites: CS 251.
To learn how to design effective database schemas that accurately model real-world information semantics. To learn how to pose complex database queries in SQL as well as theoretical query languages. To understand what is meant by a transaction. To gain an introductory background in concurrency control and recovery. To learn about indexing in database systems. To learn about advanced database models, such as object-relational models and data warehouses.
Upon the successful completion of this class, students will be able to:
Since you will be using SQL in some assignments, you may wish to have additional information concerning the SQL query language. SQL:1999--Understanding Relational Language Components, by Melton, Simon, and Gray (2001 ISBN 1-55860-456-1) is a good reference.
Implementation of a database application -- entering the schema, transforming and loading data, and posing queries. (4 weeks)
Ethical considerations of ownership of information and protection of private information is discussed during the database security lectures. The class time devoted to social and ethical considerations is about 30 minutes. Students are graded on their understanding of database security, but not on their understanding of ethical issues.
Relational algebra & calculus, and normalization theory are the primary theoretical components of the course, but also some theory of transaction concurrency control is covered. Theoretical topics are covered about 4 weeks out of 10 weeks.
Students must analyze the information content of applications using entity-relationship modeling during the course.
Students must design database schemas as a result of their ER modeling analysis.
CAC Category Credits | Core | Advanced |
Data Structures | 0.8 | |
Algorithms | 1.2 | |
Software Design | 1.0 | |
Computer Architecture | ||
Programming Languages | 1.0 |