This course covers database design and the use of databases in applications.
The objectives of the course are to attain a basic
knowledge of database programming, an understanding of the internals of relational database engines, and an ability to analyze solutions to real-life interesting problems.
It includes extensive coverage of the relational model, relational algebra,
and SQL. The course also features database design and relational design
principles based on dependencies and normal forms. Many additional key
database topics from the design and application-building perspective
are also covered, including indexes, views, transactions, and
integrity constraints. In the lab there will be a programming project
which will explore database design and management in web applications by
utilizing appropriate features of SQL.
The topics to be covered include but not limited to introduction and history of database;
realtional model, realtional algebra, structured query language (SQL),
database design theory, enetity-realtionship diagram, constrains and triggers,
transactions, indexing, query optimization, and data analytics.
The final grade of this course will be evaluated by the
following weighted combination: