CIS 54: Introduction to RDBMS

Time

Thursdays 1:00pm to 5:05pm

Room

Online Only Due to COVID-19

Lab

Open Lab - 1 hour per week

Units

4

Book
Database Concepts (9th Edition)
Links

Course Calendar

#

Date

Topic

1

1/28

Welcome

  • Overview of databases

  • Install MySQL Workbench

  • Get access to class technology

Pages
Labs

2

2/4

Introduction to DBMS

  • Describe the problem with lists

  • Organize data into relational tables

  • Describe the role of the DBMS

Reading

Chapter 1

Labs
Queen Anne Curiosity Shop Project Questions on page 69.
Project

3

2/11

The Relational Model

  • Define entities and attributes

  • Create primary keys and foreign keys

  • List the eight relational rules

Reading

Chapter 2 (pp. 70-83)

Labs
Project

4

2/18

The Relational Model

  • Describe the meaning of NULL values

  • Define functional dependencies and their role in choosing keys

Reading

Chapter 2 (pp. 83-89)

Labs
Project

5

2/25

The Relational Model

Reading

Chapter 2 (pp. 89-100)

  • Use functional dependencies to normalize tables

  • Describe normal forms

Project
Book
Queen Anne Curiosity Shop Project Questions on pages 131-133

6

3/4

SQL - Selects

  • Write single table SELECT statements

  • Filter rows with WHERE

  • Use ORDER BY, LIMIT and COUNT

Reading

Chapter 3

Labs
Week06 SQL Practice

7

3/11

SQL - Selects

  • Use GROUP BY and HAVING

  • Use aggregate operators like MIN(), MAX() and AVG()

Reading

Chapter 3

Pages
Labs
Flights -> Intermediate Selects
Population -> Advanced Selects

8

3/18

Midterm

-

3/25

Spring Break

09

4/1

SQL - Creating Tables

  • Create a schema with CREATE TABLE

  • Identify the proper data type for a column

  • Write table constraints

  • Manipulate data with INSERT, DELETE and UPDATE

Reading

Chapter 3

Project
Queen Anne Project (in Jupyter)

10

4/8

SQL - Subqueries and Joins

  • Use the IN, UNION and INTERSECT operators

  • Write nested SELECT statments

  • Describe an equijoin

Reading

Chapter 3

Labs
Queen Anne Joins (in Jupyter)
Intro to Visualization (in Jupyter)

11

4/15

SQL - Outer Joins

  • Understand joining three or more tables

  • Know when to use an outer join

Reading

Chapter 3

Labs

12

4/22

Data Modeling

  • Elicit database requirements

  • Represent requirements using a crow’s foot diagram

Reading

Chapter 4

Labs
Working with Real Data Part 2 (Jupyter Notebook)
Projects

13

4/29

Database Design

  • Translate a requirements model into a schema

  • Use the modeling tools in MySQL workbench

Reading

Chapter 4

Project

14

5/6

Transactions and Concurrency

  • Define the A.C.I.D. properties of a database

  • Use START TRANSACTION, COMMIT AND ROLLBACK statements

Reading

Chapter 6

15

5/13

Database Security

  • Describe user rights in relational databases

  • Use the GRANT and REVOKE statements

Reading

Chapter 6

16

TBD

Final Exam

Course Description

Teaches the the use and administration of a Client/Server Relational Database Management System. Covers the installation and administration of MySQL Client/Server Relational Database Management Installation along with the design, creation and administration of enterprise databases, performance tuning, security, and disaster recovery. Additional topics include: SQL (Structured Query Language), data types, functions, normalization, and a brief introduction to server-level programming and language interfaces for developing database-driven websites, emphasizing PHP systems. May be offered in a Distance-Learning Format.

Student Learner Outcomes

  • Implement and analyze databases.

  • Maintain database management systems and data.

Objectives

  • Discuss the functionality of relational database management systems.

  • Install a relational database management system.

  • Apply administration utilities to administer a database management system.

  • Identify how information is physically stored in a database.

  • Synthesize a database query using SQL.

  • Write and debug SQL statements inserting, updating, and deleting records in a database.

  • Create and drop user databases.

  • Create, rename, modify, and delete tables and indexes.

  • Design a database with efficient data retrieval that is easy to maintain.

  • Populate a database using import methods and database transfer tools.

  • Describe and implement transactions and locking.

  • Describe and perform the process of securing a database.

  • Analyze the security of a database installation.

  • Describe the security architecture in a database and assign user privileges.

  • Discuss security best practices.

  • Administer repair of a corrupted database.

  • Create and implement a backup and restore strategy.

  • Describe and implement methods for optimizing database performance.

Grading Policy

  • 60% Labs and Homework

  • 20% Midterm

  • 20% Final

TBA (To Be Arranged) Lab Hours

This course meets weekly at the times shown in the Cabrillo Schedule of Classes and above. In addition each student is required to spend lab time every week in either the CIS Lab (room 830) or online using one of the online accounts issued to you. Students may choose the time and day for their TBA Lab Hours where they will work on lab assignments designed to give them practical hands-on experience and continue the learning process. These TBA lab hours are required and tracked. It is the student’s responsibility to complete the TBA lab hours, which start on Week 1 of the term. Tip: A great time to do TBA lab hours is in the CIS Lab during my STEM hours. If that is not possible, questions can always be posted on the class discussion group.

Class Pacing and Due Dates

Assignments are due most weeks during the term. Each class builds on the previous class so it’s important to keep up with the assignments. Keeping pace with the lectures will help you get the most out of in-class lab activities. However, I would much rather you do an assignment late than not at all. Late work will be accepted until a reasonable amount of time before the end of the semester. There will be a nominal penalty for late assignments.

If you have an emergency that prevents you from submitting assignments on time, please email me for an accommodation.

Classroom Etiquette

It is important to have an effective, distraction-free classroom environment for learning. To minimize distractions all cell-phones should be turned off or at least silenced. Never carry on conversations during the lecture as this is probably the most annoying distraction possible to those sitting nearby.

For students in the physical classroom, computers can be turned on for viewing lecture slides locally, Google-ing related technical information, and doing classroom exercises. A student’s full attention is desired so the computers should not be used during lecture for email or anything that would distract them or others from the material being taught.

For students in the virtual classroom, use the “Raise hand” icon in CCC Confer to let the instructor know you have a question. The chat window can be used to ask questions and communicate with the instructor or other classmates. For students dialing in please use *6 on your phone to mute/unmute your line so background noises in your location don’t distract the class.

Please plan on coming to all classes. If class will be missed let the instructor know ahead of time. It is the student’s responsibility to get any missed material or information from other classmates (the forum is a good way to do this). Please note that being disruptive is grounds for being dropped from the class by the instructor.

Academic Conduct

Instructors at Cabrillo will not tolerate any forms of academic dishonesty. We do not accept remarkably similar assignments. Students who engage in violations of academic integrity (cheating, plagiarizing print or electronic sources, copying computer files, web site content) as outlined in Cabrillo’s Student Rights and Responsibilities document are subject to disciplinary action by the instructor including receiving an “F” for the assignment, being dropped from the course with a “W” or being issued an “F” for the course.

Missing Classes and Drops

It is the student’s responsibility to officially withdraw from classes. If you miss more than two classes or two lab assignments, the instructor may drop you from the course enrollment unless prior arrangements have been made and agreed to.

Nondescrimination and Accessibility Notice

The District is committed to equal opportunity in educational programs, employment, and all access to institutional programs and activities. The District, and each individual who represents the District, shall provide access to its services, classes, and programs without regard to national origin, religion, age, gender, gender identity, gender expression, race or ethnicity, color, medical condition, genetic information, ancestry, sexual orientation, marital status, physical or mental disability, pregnancy, or military and veteran status, or because he/she is perceived to have one or more of the foregoing characteristics, or based on association with a person or group with one or more of these actual or perceived characteristics.

Students needing accommodations should inform the instructor. As required by the Americans with Disabilities Act (ADA), accommodations are provided to insure equal access for students with verified disabilities. To determine if you qualify or if you need assistance with an accommodation, please contact the ACCESSIBILITY SUPPORT CENTER (Formerly DSPS), Room 1073 (upstairs in the Library), (831) 479-6379 or (831) 479-6370.

Support Services

Cabrillo College has many programs and services designed to help you during your academic journey. You can visit the website at www.cabrillo.edu for a complete listing of support services (under the Student Services tab). Please take advantage of the services provided to you by the college.

Financial Aid

Cabrillo College provides several financial aid opportunities for students. For tuition and/or book assistance information, go to Cabrillo’s Financial Aid page.

Student Rights and Responsibilities

You are expected to contribute to a positive learning environment. Your responsibilities as a student include:

  • Respect for your fellow students, staff, and faculty

  • Actively participating in the learning environment

  • Taking responsibility for learning and progressing in your course

  • Requesting assistance from the instructor when needed

  • Adhere to all academic integrity principles

  • Reading and understanding the Cabrillo Student Rights and Responsibilities Handbook. (the student grievance procedure is outlined beginning on pg. 18 of the handbook).

  • Following all school policies and procedures (All policies and procedures can be found at Cabrillo’s Board Policies and Administrative Procedures page).

Safety

Cabrillo College is committed to providing a safe and secure campus environment. The college will not tolerate acts of harassment or violence. For campus safety and security information, go to the Sheriff’s page. To report an incident or complaint, please go to the Just Report It page on the website: Just Report It.