Covers Relational database design and the use of database management systems. It covers Data Definition Language and Data Manipulation commands. It includes an introduction to the relational model, relational algebra, and SQL. The course includes relational design principles based on dependencies and normal forms. Covers normalization of data to eliminate data anomalies. Additional database topics introduced are indexes, views, transactions, authorization, integrity constraints, triggers, on-line analytical processing. Interactive and programmatic interfaces to database systems. All application programming projects use commercial database systems.