CS3010 provides a basic introduction to relational database management systems (DBMSs). This course is designed to provide you with both an external and an internal view of relational DBMSs. Topics related to the external view will allow you to use a relational DBMS. Topics related to the internal view have been selected to give you an understanding of the fundamental database concepts and implementation techniques that are used in relational database engines. The course will cover the following topics: purpose and evolution of database management systems, relational model of data and relational algebra, SQL, integrity constraints, authorization, database design and normal forms, database applications, storage structures and indexing, query processing, transactions, lock based concurrency control.

The lab will comprise of several assignments related to database design, SQL, database application development and database system internals.