Intermediate Database Design and SQL


Units: 6

Description: This course is designed to deepen a student’s knowledge and increase their skill in using relational database technology, with emphasis on the efficient use of advanced SQL to retrieve, analyze, and manipulate structured data. The course will expand on the basic relational database concepts and skills introduced in 90-728 by introducing advanced concepts and techniques for constructing logical and physical database designs. In addition, the course will introduce newer “big data” data models and contrast them with the relational data model. Students will gain experience in using Oracle’s Relational Database Management System throughout the course.

Learning Outcomes: After successfully completing the course, a student will be able to: 1) Use basic and advanced Structured Query Language (SQL) data manipulation constructs to retrieve, analyze, and manipulate enterprise data based on advanced data models and/or complex processing logic. 2) Apply knowledge of relational algebra, query execution, and performance tuning to analyze and tune SQL statements. 3) Utilize advanced data modeling concepts and techniques to create logical database designs that satisfy business and data integrity requirements. 4) Translate a simple logical database design into a physical database design. 5) Use SQL data definition constructs to create database objects such as tables, views, and indexes. 6) Contrast newer data models with the relational data model, identifying current uses of these data models. NOTE: All SQL work will be completed using Oracle 11g SQL. Students with an Apple computer must install Windows (Bootcamp/VM) in order to use the Oracle software. This software is not available in any campus computer labs.

Prerequisites: 90-728 Introduction to Database Management, or 93-732 Database Theory and Practices for Creative Enterprises, or permission of instructor. Students who have taken 95-703, Database Management, should NOT take this course, as there is considerable overlap in content.