Saigon Institute of Technology http://www.saigontech.edu.vn Houston Community College System http://csci.hccs.edu ITSE 1345 – INTRODUCTION TO ORACLE SQL SYLLABUS CRN: 91298 Semester: Summer 2012 Campus and Room: Quang Trung Tower – Lab 707 Days & Times: Monday 13:00 to 15:00, Tuesday 15:15 to 17:15 (Tutorial), Wednesday 13:00 to 15:00 Instructor: Mr. Lao, Khuong Luan Telephone: (84-8) 3715 4057 (ext. 1641), Cell: 0933 570 197 Office Hours: By appointment (Rm 610) Email Address: luanlk@saigontech.edu.vn Tutor: Mr. Nguyen Quoc Huy Telephone: (84-8) 37154057 (Ext:1683), Cell: 0908428246 Office Hours: By appointment (Rm 610) Email Address: huynq@saigontech.edu.vn Course Description: Prerequisite: COSC1436, ENGL1301 and MATH1314 Credit: 3 This course is an introduction to the design and creation of relational databases. Topics include storing, retrieving, updating, and displaying data using Structured Query Language (SQL). Course Requirements and Expectations: Class attendance: You are expected to regularly attend and be on time for all classes. You are responsible for all materials covered during an absence. Academic dishonesty: Students are expected to complete all assignments & exams on their own. This does not prevent the student from seeking assistance from the instructor or other students. Copying of assignments or cheating on exams may result in dismissal from this course. Refer to the Saigon Tech’s Student Handbook for further information regarding academic dishonesty. Textbooks: Oracle Database 10g: SQL Fundamentals I & II Student Guide: Vol. 1 & Vol. 2, Jobi Varghese, ISBN: D17108GC11 Oracle Database 10g SQL by Jason Price, McGraw-Hill/Osborne © 2004, ISBN: 0072229810 Detailed Course Evaluation: Item Participation & Study effort Assignments In-class Test Percentage 5 20 15 Midterm Exam 20 Final Exam 20 Project 20 Total 100 The final grade will be evaluated based on the final score as below: Grade A B C D F Final Score 90-100 80-89 70-79 60-69 0-59 The passing grade of this course is D. Late Assignments Policy: Students who submit their assignments late by 1 day will have their score for the corresponding assignment subtracted 10%, 2 days 20%. Assignments that are late by more than 3 days will not be accepted and the students will receive 0 (zero) for the corresponding assignment. Make-up Exam Policy: Make-up exams are not guaranteed, but are granted at the discretion of the instructor. If make-up exams are allowed, it is necessary to make arrangements with the instructor prior to exam date. Class rules: Turn your cell phones to silent mode or turn off. You may use Internet appropriately during lectures or lab times. Do not use the internet for playing games or if it distracts you from learning in class. All work turned in is to be computer printed with appropriate headings (name, course info, assignment number and date) and stripped of any perforations. It is strongly recommended that you exchange phone numbers with a couple of classmates so that you may call them if you miss a class so that you will know what was covered and what you are walking into the next class period. You have no one to blame but yourself if you walk into an unexpected exam! A good study / lab partner is invaluable. Try to be one as well as have one. The more you practice, the more you will learn. Computer usage is more an acquired skill that an academic one. Student Learning Outcomes and Learning Objectives: Academic Discipline/CTE Program Learning Outcomes 1. Design and write computer programs that are correct, simple, clear, efficient, well organized, and well documented 2. Identify the fundamental principles of programming, including those of algorithm analysis, software design, operating systems, and database 3. Know and be able to apply important data structures and algorithms 4. Understand the hardware and software aspects of computer systems that support application software development 5. Develop software engineering proficiency 1. Write Structured Query Language (SQL) statements using Oracle; Course SLO (Students Learning 2. Select and sort data; 3. Produce reports with SQL*Plus; 4. Create and manage tables which include constraints; create Views and other database objects. 5. Control user access with Oracle sql Outcomes) 1. Employ SQL functions to generate and retrieve customized data LO (Learning Objectives) 2. Display data from multiple tables using the ANSI SQL 99 JOIN syntax 3. Identify the major structural components of the Oracle Database 11g 4. Create reports of aggregated data 5. Write SELECT statements that include queries 6. Retrieve row and column data from tables with the SELECT statement 7. Run data manipulation statements (DML) to update data in the Oracle Database 8. Create tables to store data 9. Utilize views to display and retrieve data 10. Control database access to specific objects 11. Manage schema objects 12. Manage objects with data dictionary views 13. Write multiple-column sub-queries 14. Use scalar and correlated sub-queries 15. Create reports of sorted and restricted data Course Calendar: Important Notes: You should prepare yourself by reading the assigned material as stated in this section before each class session. You should plan on spending several hours per week outside the classroom to prepare for the class. Make time for reading the required material, for reviewing your instructor’s lecture notes, for completing any homework assignments and for practicing the hands-on computer skills. Make yourself aware of the open lab times that are available to you, and if you do not have a home computer with the required software, plan to spend consistent, quality time in the open labs. More specific assignments, including page numbers, or additional assignments, may be given in class. This topics and chapters listed in this calendar are not meant to be all inclusive. It is a brief scenario and other topics may be discussed and tested on. This schedule is not fixed and is subject to change at the instructor’s prerogative. Any change will be announced in class. DATE SESSION 1 11/06/12 READING ASSIGNMENT TOPICS Oracle Database 10g: SQL Fundamentals Orientation Oracle Product I Certificate information Resources Introduction Oracle 10g Database and 10g Application Defining a Database Discussing Relational and Object Relatio Management System Discussing System Development Life Cy 12/06/12 2 LAB Introduction Describing the Oracle Implementation of and the Object Relational Database Mana (ORDBMS) Conventions of Entity Relation Modeling 3 13/06/12 4 Chapter 1: Retrieving Data Using the SQL SELECT Statement 5 6 Communicating with a RDBMS Using S Chapter 1: Retrieving Data Using the S Statement Writing a Basic SQL Statement Describing the SQL Select Capabilities Executing a Basic Select Statement with Clauses Differentiating Between SQL and iSQL* Overview of iSQL*Plus iSQL*Plus Environment and Interacting LAB Chapter 2: Restricting and Sorting Data Chapter 2: Restricting and Sorting Da Restricting and Sorting Data Limiting the Rows Retrieved by a Query Sorting the Rows Retrieved by a Query Chapter 3: Using Single-Row Function Output Single Row Functions Describing Various Types of Functions A Chapter 4: Reporting Aggregated Data using Chapter 3: Using Single-Row Function the Group Functions Output (Cont...) Using a Variety of Character, Number, an in SELECT Statements Explaining What Functions Are and How They Are Used Chapter 3: Using Single-Row Functions to Customize Output 7 Chapter 4: Reporting Aggregated Data Functions Aggregating Data using Group Functions Identifying the Different Group Function Explaining the Use of Group Functions Grouping Data Using the GROUP BY Cl Including or Excluding Grouped Rows U Clause Nesting in Group Functions 8 9 LAB Chapter 5: Displaying Data from Multiple Tables Chapter 5: Displaying Data from Mult Displaying Data from Multiple Tables Writing SELECT Statements to Access D Than One Table Describing the Cartesian Product Joining Tables Using the Oracle Syntax Joining Tables Using SQL: 1999 Syntax In Class Test 1 10 Chapter 6: Using Subqueries to Solve Queries Chapter 6: Using Subqueries to Solve Q Subqueries Describing the Types of Problems That S Solve Describing What Subqueries Are Listing the Types of Subqueries Writing Single-Row and Multi-Row Subq ANY and ALL operators in Multiple-Row Chapter 7: Using the Set Operators Chapter 7: Using the Set Operators Describe set operators Use a set operator to combine multiple qu query Control the order of rows returned 11 12 13 LAB Chapter 8: Manipulating Data Chapter 8: Manipulating Data Describing Each Data Manipulation Lang Command Inserting Rows into a Table Updating Rows in a Table Deleting Rows from a Table Controlling Transactions Describing Transaction Processing Descr Consistency, and Implicit and Explicit Lo In Class Test 2 14 15 16 LAB Chapter 9: Using DDL Statements to Create Chapter 9: Using DDL Statements to C and Manage Tables Manage Tables Categorize the main database objects Review the table structure List the data types that are available for c Create a simple table Explain how constraints are created at the creation Describe how schema objects work Review 17 LAB 18 Mid Term Test 19 Chapter 10: Creating Other Schema Objects Chapter 10: Creating Other Schema O Create, maintain, and use sequences Create and maintain indexes Create private and public synonyms 20 21 Chapter 11: Managing Objects with Data Chapter 11: Managing Objects with D Dictionary Views Views Use the data dictionary views to research objects Query various data dictionary views LAB Oracle Database 10g: SQL Fundamentals II Introduction Chapter 1: Controlling User Access Chapter 1: Controlling User Access Controlling User Access Chapter 2: Managing Schema Objects Understanding the Concepts of Users, Ro Granting and Revoking Object Privileges Creating Roles and Granting Privileges to Creating Synonyms for Ease of Table Ac Chapter 2: Managing Schema Objects Add constraints Create indexes Create indexes using the CREATE TABL Creating function-based indexes Drop columns and set column UNUSED Perform FLASHBACK operations Create and use external tables 22 Chapter 3: Manipulating Large Data Sets 23 24 Chapter 3: Manipulating Large Data S Manipulate data using subqueries Describe the features of multitable INSER Merge rows in a table Track the changes to data over a period o LAB Chapter 4: Generating Reports by Grouping Related Data In Class Test 3 Chapter 4: Generating Reports by Gro Related Data Use the ROLLUP operation to produce subtotal values Use the CUBE operation to produce cros Use the GROUPING function to identify created by ROLLUP or CUBE 25 Chapter 4: Generating Reports by Gro Related Data (cont) Use the GROUPING function to identify created by ROLLUP or CUBE (Cont...) Use GROUPING SETS to produce a sing 26 LAB 27 28 Oracle 10g Datetime Support Discussion and SESSIONTIMEZONE Chapter 6: Retrieving Data Using Subqueries Chapter 6: Retrieving Data Using Subq Write a multiple-column subquery Use scalar subqueries in SQL Solve problems with correlated subquerie Update and delete rows using correlated s 29 LAB 30 Chapter 6: Retrieving Data Using Subq Update and delete rows using correlated s Use the EXISTS and NOT EXISTS opera Use the WITH clause 31 Review 32 Lab - Review 33 Final Exam 34 Project presentation 35 Project presentation 36 Project presentation Exam Format: Exam Exam Type Mid-term Chapter 5: Managing Data in Different Time Chapter 5: Managing Data in Differen Zones Oracle 10g Datetime Functions Theory (on Paper) Open/Closed Book Closed Number of Questions 40 Duration Points (minutes) 60 100 Theory (on Paper) Final Closed 50 75 100 Chapters Oracle Database 10g: SQL Fundamentals I Oracle Database 10g: SQL Fundamentals I + Oracle Database 10g: SQL Fundamentals II Other Information: - Preparation for Class: It is expected that the students read related chapters in lecture notes before each class. This will help to capture the topics presented and discussed during class hours. - Use of Class Time: Class time will be used mainly for lectures and discussions. A small part of class hours is used for testing. Home work will be discussed on individual basis. - Class Attendance: Due to the broad range of topics discussed throughout the course and their interrelationship, it is requested that the students should attend the class regularly. Additional Syllabus Attachments: Standard Department Syllabus Attachment (same for all courses)