MCT490 - Oracle Database 11g: Introduction to SQL

Outline info
Semester
School
Last revision date 2017-10-12 09:58:15.704
Last review date 2017-10-12 09:58:15.706


Subject Title
Oracle Database 11g: Introduction to SQL

Subject Description
Learn the concepts of relational databases and the essential SQL skills to write queries against single and multiple tables, manipulate data in tables, create database objects and control privileges at the object and system level. This course will help prepare you for the Oracle exam IZO-050.

Credit Status
 This subject is part of the Recognition of Achievement Programs for Oracle Database Administration and Oracle Application Developer.

Learning Outcomes
Upon successful completion of this subject the student will be able to:

1. Employ SQL functions to generate and retrieve customized data.
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 11g.
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. Use the regular expression support in SQL.
16. Create reports of sorted and restricted data.

Cheating and Plagiarism
Each student should be aware of the College's policy regarding Cheating and Plagiarism. Seneca's Academic Policy will be strictly enforced.

To support academic honesty at Seneca College, all work submitted by students may be reviewed for authenticity and originality, utilizing software tools and third party services. Please visit the Academic Honesty site on http://library.senecacollege.ca for further information regarding cheating and plagiarism policies and procedures.

Discrimination/Harassment
All students and employees have the right to study and work in an environment that is free from discrimination and/or harassment. Language or activities that defeat this objective violate the College Policy on Discrimination/Harassment and shall not be tolerated. Information and assistance are available from the Student Conduct Office at student.conduct@senecacollege.ca.

Accommodation for Students with Disabilities
The College will provide reasonable accommodation to students with disabilities in order to promote academic success. If you require accommodation, contact the Counselling and Disabilities Services Office at ext. 22900 to initiate the process for documenting, assessing and implementing your individual accommodation needs.

Prerequisite(s)
MCT100 or equivalent experience    

Topic Outline

Introducing Oracle Database 12C

  • List the features of Oracle Database 12C
  • Discuss the basic design, theoretical and physical aspects of a relational database
  • Categorize the different types of SQL statements
  • Describe the data set used by the course
  • Log onto the database using the SQL Developer environment
  • Save queries to files and use script files in SQL Developer
  • Develpment Environments fo SQL
  • Using SQL Developer and SQL Plus
  • The Human Resource (HR) Shema
  • HR Tables used in the course

Retrieving Data Using the SQL SELECT Statement
  • List the capabilities of SQL SELECT statements
  • Generate a report of data from the output of a basic SELECT statement
  • Select All Columns
  • Select Specific Columns
  • Column aliases
  • Use of concatenation operator, literal chaacter strings, alternative quote operator, and the DISTINCT keyword
  • Use Column Heading Defaults
  • Arithmetic expressions and NULL  values in the SELECT statment
  • Understand Operator Precedence
  • Learn the DESCRIBE command to display the table structure

Restricting and Sorting Data
  • Write queries that contain a WHERE clause to limit the output retrieved
  • List the comparison operators and logical operators that are used in a WHERE clause
  • Describe the rules of precedence for comparison and logical operators
  • Use character string literals in the WHERE clause
  • Write queries that contain an ORDER BY clause sort the output of a SELECT statement
  • Sort output in descending and ascending order
  • Limiting the Rows
  • Substituton Variables
  • Using the DEFINE and VERIFY command

Using Single-Row Functions to Customize Output
  • Describe the differences between single row and multiple row functions
  • Manipulate strings with character function in the SELECT and WHERE clauses
  • Manipulate numbers with the ROUND, TRUNC and MOD functions
  • Perform arithmetic with date data
  • Manipulate dates with the date functions

Using Conversion Functions and Conditional Expressions
  • Describe implicit and explicit data type conversion
  • Use the TO_CHAR, TO_NUMBER, and TO_DATE conversion functions
  • Nest multiple functions
  • Apply the NVL, NULLIF, and COALESCE functions to data
  • Use conditional IF THEN ELSE logic in a SELECT statement

Reporting Aggregated Data Using the Group Functions
  • Use the aggregation functions in SELECT statements to produce meaningful reports
  • Create queries that divide the data in groups by using the GROUP BY clause
  • Create queries that exclude groups of date by using the HAVING clause
  • Restricting Group Results

Displaying Data From Multiple Tables Using Joins
  • Write SELECT statements to access data from more than one table
  • Introduction to JOINS
  • Types of Joins
  • Natural join
  • Non equijoins
  • View data that generally does not meet a join condition by using outer joins
  • Join a table by using a self join

Using Sub-queries to Solve Queries
  • Describe the types of problem that sub-queries can solve
  • Define sub-queries
  • List the types of sub-queries
  • Write single-row and multiple-row sub-queries

Using the SET Operators
  • Describe the SET operators
  • UNION and UNION ALL operator
  • INTERSECT operator
  • MINUS operator
  • Matching the SELECT statements
  • Use a SET operator to combine multiple queries into a single query
  • Control the order of rows returned when using the SET operators

Managing Tables using DML Statements
  • Data Manipulation Language
  • Describe each DML Statement
  • Insert rows into a table with the INSERT Statement
  • Use the UPDATE Statment to change rows in a table
  • Delete rows from a table with the DELETE Statment
  • Database Transactions
  • Save and discard changes with the COMMIT and  ROLLBACK Statements
  • Explain read consistency

Introduction to Data Definition Language
  • Data Definition Language
  • Categorize the main database objects
  • Review the table structure
  • List the data types available for columns
  • Create simple table
  • Decipher how constraints can be created at table creation
  • Describe how schema objects work
Creating Sequences, Synonyms, Indexes
  • Overview of sequences
  • Overview of synonyms
  • Overview of indexes
Creating Views
  • Overview of views
  • Create a simple and complex view
  • Retreve data from views

Manipulating Data
  • Describe each DML statement
  • Insert rows into a table with the INSERT statement
  • Use the UPDATE statement to change rows in a table
  • Delete rows from a table with the DELETE statement
  • Save and discard changes with the COMMIT and ROLLBACK statements
  • Explain read consistency

Using DDL Statements to Create and Manage Tables
  • Categorize the main database objects
  • Review the table structure
  • List the data types available for columns
  • Create a simple table
  • Decipher how constraints can be created at table creation
  • Describe how schema objects work

Creating Other Schema Objects
  • Create a simple and complex view
  • Retrieve data from views
  • Create, maintain, and use sequences
  • Create and maintain indexes
  • Create private and public synonyms

Controlling User Access
  • Differentiate system privileges from object privileges
  • Creating Users
  • Granting System Privileges
  • Creating and Granting Privileges to a Role
  • Changing Your Password
  • Granting Object Privileges
  • Passing On Your Privileges
  • Revoking Object Privileges

Managing Schema Objects
  • Adding, Modifying and Dropping a Column
  • Adding, Dropping and Deferring a Constraint
  • Enabling and Disabling a Constraint
  • Creating and Removing Indexes
  • Creating a Function-Based Index
  • Performing Flashback Operations
  • Creating and using temporary tables
  • Creating and using external tables
  • Creating an External Table by Using ORACLE_LOADER and by Using ORACLE_DATAPUMP
  • Querying External Tables

Managing Objects with Data Dictionary Views
  • Explain the data dictionary
  • Using the Dictionary Views
  • USER_OBJECTS and ALL_OBJECTS Views
  • Table and Column Information
  • Querying the dictionary views for constraint information
  • Querying the dictionary views for view, sequence, index and synonym information
  • Adding a comment to a table
  • Querying the dictionary views for comment information

Manipulating Large Data Sets
  • Using Subqueries to Manipulate Data
  • Overview of the Explicit Default Feature
  • Retrieving Data Using a Subquery as Source
  • Inserting Using a Subquery as a Target
  • Using the WITH CHECK OPTION Keyword on DML Statements
  • Types of Multitable INSERT Statements
  • Using Multitable INSERT Statements
  • Merging rows in a table
  • Using the MERGE Statment
  • Performing flashback operations
  • Tracking Changes in Data over a period of time
  • Using Correlated Subqueries to Update and Delete rows

Managing Data in Different Time Zones
  • Time Zones
  • CURRENT_DATE, CURRENT_TIMESTAMP, and LOCALTIMESTAMP
  • Comparing Date and Time in a Session’s Time Zone
  • DBTIMEZONE and SESSIONTIMEZONE
  • Difference between DATE and TIMESTAMP
  • INTERVAL Data Types
  • Using EXTRACT, TZ_OFFSET and FROM_TZ
  • Using TO_TIMESTAMP,TO_YMINTERVAL and TO_DSINTERVAL

Retrieving Data Using Sub-queries
  • Multiple-Column Subqueries
  • Retrieving Data by using a Subquery as Source
  • Pairwise and Nonpairwise Comparison
  • Using Scalar Subquery Expressions
  • Solving problems with Correlated Subqueries
  • Updating and Deleting Rows Using Correlated Subqueries
  • Using the EXISTS and NOT EXISTS operators
  • Using the WITH clause
  • Using the Recursive WITH clause

Regular Expression Support
  • Using the Regular Expressions Functions and Conditions in SQL
  • Using Meta Characters with Regular Expressions
  • Performing a Basic Search using the REGEXP_LIKE function
  • Finding patterns using the REGEXP_INSTR function
  • Extracting Substrings using the REGEXP_SUBSTR function
  • Replacing Patterns Using the REGEXP_REPLACE function
  • Using Sub-Expressions with Regular Expression Support
  • Using the REGEXP_COUNT function

Mode of Instruction
The primary mode of learning will be a combination of lecture and hands-on classroom instruction. Additional modes of instruction will include class discussion, and question and answer period.



Prescribed Texts
The following materials will be provided:
Oracle's ebook 



Required Supplies
USB Flash Drive


Promotion Policy

Grading Policy
A+ 90%  to  100%
A 80%  to  89%
B+ 75%  to  79%
B 70%  to  74%
C+ 65%  to  69%
C 60%  to  64%
D+ 55%  to  59%
D 50%  to  54%
F 0%    to  49% (Not a Pass)
OR
EXC Excellent
SAT Satisfactory
UNSAT Unsatisfactory

For further information, see a copy of the Academic Policy, available online (http://www.senecacollege.ca/academic-policy) or at Seneca's Registrar's Offices.




Modes of Evaluation
This subject is part of the Oracle Recognition of Achievement programs. Those students choosing to pursue an Oracle Recognition of Achievement are required to write a final exam at the completion of this subject. A mark of 70% of higher is required in the exam in order to apply this subject to the Recognition of Achievement. 


Approved by: Denis Gravelle