Skip to main content

CSC 540 Database Management Concepts and Systems

3 Credit Hours

Advanced database concepts. Logical organization of databases: the entity-relationship model; the relational data model and its languages. Functional dependencies and normal forms. Design, implementation, and optimization of query languages; security and integrity, consurrency control, transaction processing, and distributed database systems.

Prerequisite

Data Structures (NC State CSC 316) AND

Knowledge of discrete mathematics and predicate logic (as in, e.g., Applied Discrete Mathematics – NC State CSC 226) AND

Sufficient ability to program in Java or willingness to acquire it through self-study.

Course Objectives

Upon successful completion of this course, students will be able to:

  • understand and apply the key concepts and techniques applicable to database-management systems
  • design and optimize (normalize) relational database schema
  • write and optimize queries in relational algebra and SQL and applications that interact with databases
  • compare and contrast different storage and indexing techniques for relational data
  • compare and contrast different techniques for transaction and recovery management in database systems; and
  • implement key components of a relational database system and application

Course Requirements

ASSIGNMENTS ~40% (quizzes, homework assignments, and course project)

MIDTERM EXAM ~25%

FINAL EXAM ~35%

Textbook

Database Systems: The Complete Book (2nd edition), by Hector Garcia-Molina, Jeffrey D. Ullman, and Jennifer Widom.

Computer and Software Requirements

All necessary software will be available for use on NCSU laboratory computers or for free download for academic purposes.

Updated 10/30/2022