Schedule by week | Information to cover |
---|---|
Note that the audio and Smartboard presentations for each class are posted within a couple of days. Please check the weekly schedule multiple times a week, I sometimes add things during the course of the week. You need to pass in the code you write and the output that is produced unless you are told otherwise. Sometimes this involves showing data that was written to a file/table. Play computer means to figure out the results yourself by evaluating the data rather than running the query. Please keep copies of all work you submit until you receive your final grade at the end of the semester. Comment on how I want the assignment: You should take the commands you do in SQL and the results and paste them into a word document. It should be similiar to the way I prepared the notes. You then send me the word document. I do not want you to show the screen itself - they are really hard to read! | |
HELP schedule | We are starting the semester with this help schedule. We may make changes based on
student need, so check back! These are the times that Joe Fletcher, my SI, is available. Sometimes there is a change of room - the help desk will always know where Joe is. Monday 2-7 in K104 Tuesday 2-5 in K104 Wednesday 2-6 in K101 Thursday 2-5 in K101 Jayson Rios from the tutoring center is also available on Monday 11-3 and Wednesday 11-1 in Fall River and Tuesday 11-2 in New Bedford. |
Final | Your final exam is due via email by Thursday, December 19th by 9:00AM.
Final Exam Required status sheet |
Week #15 Week of December 9th |
This is open lab catch-up week. Labs will be Monday from 12:00 to 7:00 (room change around 2), Tuesday 9:30 to 5:00
(room change around 2), Wednesday with Joe, 2:00 to 6:00, Thursday from 9:30 to 5. I will not have office hours on Monday
at 10.The final exam will be posted a
week before the scheduled final. It must be passed in via email by Thursday, December 19th by 9:00AM. It must have
the accompanying status sheet as well. |
Week #14 Week of December 2nd |
We will finish PL/SQL triggers and go back to a few things we skipped like arrays, inner/outer procedures and Record and Table types. The final is online and will be posted one week before it is due. The status sheet must accompany the final. If you want to do a draft now for me to check that is fine, but be sure it is current when you pass it in with the final. CIS150 status sheet No new assignments. |
Week #13 Week of November 25th |
We will do some more with procedures and functions and them maybe move on to triggers. Anything we don't do will be
part of next week. Donor example with 1 cursor More on internal procedures and functions Still more on procedures and functions Introduction to triggers More on triggers More on Procedures - Internal Procedures Separate speaker notes for More on Procedures - Internal Procedures Introduction to Triggers Separate speaker notes for Introduction to Triggers More and Still More on Procedures and Functions Separate speaker notes for More and Still More on Procedures and Functions More on Triggers Separate speaker notes for More on Triggers Assignments: Assignment on procedures, functions and triggers Notes on check digits You need to write the routine to calculate a check digit using Mod 11 and to validate a check digit using Mod 11. It can be done in two scripts or one. |
Week #12 Week of November 18th |
Thursday is an open lab day from 9:30 until 5:00 in K101. Come for as many hours as you can and work
to get caught up with Joe or myself to answer questions.
Example we will look at: type examples We will look at types and then move on to procedures and functions. Here are notes on functions, procedures. Introduction to procedures Introduction to functions Internal procedures Introduction to PL/SQL Procedures Separate speaker notes for Introduction to PL/SQL Procedures Introduction to PL/SQL Functions Separate speaker notes for Introduction to PL/SQL Functions Assignments: Cursor/exceptions Check back! |
Week #11 Week of November 11th |
Continuing with cursors and looking at exceptions. While for 4th program Introduction to exceptions Exceptions in PL/SQL Separate speaker notes for Exceptions in PL/SQL Assignments: Catch up week! |
Week #10 Week of November 4th |
I will not be in on November 7th. Joe will be available starting at 12:30 to 5 for an open lab. A group of alum are coming to my CIS120 classes on November 5th to talk about jobs and careers in IT. Please try to come. Note they will come to both the 11:00 class and the 12:30 class. Note: The last date for student generated withdrawal is Thursday, November 14, 2019. Remember I cannot withdraw you so if you do not have the grades needed to pass the course, I will have to give you an F. Continuing with cursor discussion we started last week. We will continue with cursors and then back up to see some the the things under Notes and handouts that we did not cover yet. Continuing example 1 using cursors Another set of cursor examples Covers: Another set of cursor exampes Separate speaker notes for Another set of cursor examples Examples we are going over in class: payprog.sql payprog1.sql payprog2.sql data.txt Data layout for studentchk.sql studentchk.sql createdonor.sql Script to create donor donorcursor1.sql donorcursor2.sql donorcursor3.sql decodecursor1.sql The plan for Thursday was: Assignments: In class we will start a cursor program. I want you to write a script that will handle the inven table and the department table. The script should accumulate the onhand for departments and write to a new table where you will store the dept, the department name and the total of the onhand. I would also like you to use the dbms lines to show the processing that happens. Everyone needs to turn in this script including the dbms output and a listing of what is on the new table. It is now an assignment we can work next Thursday. Next assignment: Use cursors to solve these problems. First Problem:Write a PL/SQL program to accomplish the following: Using the sample emp database, give everyone in dept 10 a 5% raise, everyone in dept 20 a 7.5% raise, everyone in department dept 30 a 10% raise. Do this using a simple IF...ELSE and a loop. Second Problem:Modify the problem in #1 to meet the following criteria: IF dept is 10 and the salary is greater than 2000 give a 6% raise otherwise give a 7% raise. IF dept is 20 and the salary is greater than 2500 give a 5% raise otherwise give a 5.5% raise. IF dept is 30 and the salary is greater than 1000 give a 7% raise otherwise give a 6.5% raise. Third Problem: Set up an inventory table and a transaction table that has sales, returns, and purchases (the transaction table should have a code with S for sales, R for returns and P for purchases). Create scripts to create and insert data into these tables. Fourth Problem: Using the tables you created in the fourth problem, process the transactions and determine the impact on inventory. Display information that gives the original inventory and the inventory after the sales, returns and purchases have been processed. You need to use cursors. Fifth Problem: I want you to redo this program so that the EXIT does not come in the middle of code but rather at the bottom. Do the second version of the program on this example sheet: Example |
Week #9 Week of October 28th |
We will look at the loops and data manipulation in PL/SQL that are listed under last week. Then we will continue on with PL/SQL. Returned to finish this handout: Introduction to PL/SQL Note the accompanying Powerpoint is listed on week #8. Then started cursors: Introduction to Cursors Example 1 using cursors Covers: Cursors in PL/SQL, cursor example and continuation of first cursor example Separate speaker notes for Cursors in PL/SQL, cursor example and continuation of first cursor example Assignments: Oracle Loop Assignment Oracle PL/SQL Intro Quiz - Start in class |
Week #8 Week of October 21st |
Thursday is an open lab day from 9:30 until 5:00 in K101. Come for as many hours as you can and work
to get caught up with Joe or myself to answer questions.
We will start PL/SQL this week.This week, I am going to look at The Introduction to PL/SQL (the beginning part), skip for a while the More examples of input/output procedures (we will go back to them) and work on Introduction to IF statements. The things below will probably be partially done and the rest we will look at next week. Introduction to PL/SQL Introduction to IF statements More on PL/SQL IF statements Introduction to loops Data manipulation in PL/SQL - introduction With the accompanying PowerPoint presentations: Introduction to PL/SQL Separate speaker notes for Introduction to PL/SQL PL/SQL - Using IF statements Separate speaker notes for PL/SQL - Using IF statements More on PL/SQL IF statements Separate speaker notes for More on PL/SQL IF statements Introduction to loops Introduction to loops Separate speaker notes for Introduction to loops Data manipulation in PL/SQL - introduction Separate speaker notes on Data manipulation in PL/SQL - introduction Assignments: IF assignment |
Week #7 Week of October 14th |
The change of schedule this week means that Joe will only be there until 6 on Tuesday. My goal is to finish the notes on SQL and then start on PL/SQL. This week we will continue looking at indexes and other constraints including keys. Please read the following on indexes, constraints and keys: Indexes in Oracle - An introductionListed also under last week More on Primary and Foreign keys Notes on key questions More on views Information on database objects Script for input data A script to create the donation table, you can use the same technique to create the drive table if you do not have them. Create donation script Sorry, forgot I had this. Also please look at the accompanying presentations: Indexes in Oracle - An Introduction Separate speaker notes for Indexes in Oracle - An Introduction Primary and Foreign constraints with a relational database Separate speaker notes to accompany primary and foreign constraints with a relational database More on Primary and Foreign Keys also info from questions Separate speaker notes for More on Primary and Foreign Keys etc. More on views Separate speaker notes for More on views Interesting SQL/Oracle Article We looked at the two very simple and basic designs for the assignment. If you are interested in more informtion about database development, this free text looks good: Database Development Life Cycle Assignments: Key, index, constraint assignment |
Week #6 Week of October 7th |
Tuesday was review day which specifically talked about grouping, relational databases and subqueries. There are
a few examples below that we will try to go over at the end of class on Thursday. Examples Solution A few more examples And still more examples We will also start to look at constraints, keys, indexes. First we will look at a practical example of working with keys and constraints. Then we will look at other things you can do and at the theory. Third normal form Keys and constraints example Indexes in Oracle - An introduction Also please look at the accompanying presentations: Indexes in Oracle - An Introduction Separate speaker notes for Indexes in Oracle - An Introduction Assignments: Oracle Key Example(this is a check off assignment) I want you to go through this example and do what I did so you follow and understand the concepts. Check back! |
Week #5 Week of September 30th |
I am going to look at subqueries a little more after you have tried the assignment from last week. So, we are going to move on
and cycle back as needed. Realistically I think what I have posted will carry over into next week, but we will see. This is an example that you might find helpful (repeated week 6): Examples Solution A few more examples We started looking at variables and got through Using Input Variables and some of more on variables. Using input variables More on variables with Oracle's SQL*Plus Table maintenance revisited (again) Continuation of table maintenance revisited (again) Using Input Variables Separate speaker notes for Using Input Variables More on variables with Oracle's SQL*Plus Separate speaker notes for More on variables with Oracle's SQL*Plus Table maintenance revisited (again) Separate speaker notes for Table maintenance revisted (again) Continuation of table maintenance revisited (again) Separate speaker notes for Continuation of table maintenance revisted (again) There was a qusestion about equijoin and looking at my notes, I could have done better. Try these! Equijoin notes Nonequijoin notes Now we are going to move on to views and reports and more on scripts. Introduction to views Introduction to reports Introduction to views Separate speaker notes for Introduction to views Introduction to Reports Separate speaker notes for Introduction to reports Resource on reports Scripts: To create a script use edit and the name of the script (.sql is added) and to run use @ scriptname. createdonor.sql Script to create donor Insert data into maintain table Insert data into maintain table ver 2 Assignments: Views and Reports Check back! |
Week #4 Week of September 23rd |
This is Enrollment Verification week and I have to verify you are in the class. If you have not passed in work or the email a week
verifying you are in the class, then you need to contact me now to make sure you are not withdrawn from the class. We will start looking at subqueries. Subqueries More on subqueries You should also look at the presentation on these topics especially the one that accompanies More on subqueries. Subqueries Separate speaker notes for subqueries More on Subqueries Separate speaker notes for More on subqueries Zipped subqueries Assignments: Subquery Quiz Note that the reference in 6 and 7 should have been to the data in problem 5 rather than problem 4 Subquery assignment |
Week #3 Week of September 16th |
On Monday Sept 23rd I will not have an office hour at 10:00, contact me for an alternative if you need one. There is a lot of support and you should definitely use it if you have questions or encounter a problem. We are hear to help you succeed! Please take advantage of that. To repeat: If you need help with something, now would be the time to ask your questions! We are going to start looking at the design of a database and the theory of relational databases. Please read information about third normal form and relational databases. I have put a variety of links to sources on the Web on the site under links and links to my site are listed below. For example: Normalization Please read the handout on definitions: Normalization definitions Please read the two examples - the first two postings under notes. Also view the slide presentation on normalization information about relational databases: Normalization - information on third normal form Separate speaker notes for normalization presentation Relational database information - information on 1 to 1, 1 to M, and M to M Separate speaker notes for relational database information Next we are going to start looking at relating tables: Introduction to multiple tables (relational) - joins Example of non-equijoin: nonequijoin Relational database examples Relational database notes and examples Goes with notes Introduction to multiple tables (relational) - joins - uses donor, donations and drive tables Separate speaker notes for relational database presentation Using join Join and where Information on join: www.sqlbook.com and then look up the kind of query you want: inner join for example. More information on joins Some interesting examples Questions about work with SQL on a home installed version. To highlight, copy and paste SQL commands and output when you are using a window that works like a command prompt window. Right click on the top border around the command window, select edit and then mark to highlight. Do the same right click edit and select copy. Then you can paste in a document. Assignments: Oracle quiz I am interested in having you play computer - I do not want you to use the computer to get the results. You can check your results if you want to, but please do it on your own. Function assignment In problem #1 just to be clear, I want you to take a name that has been written with the slash separator in the format last/first m and flip it so it has first m last using Oracle functions. Specifically it can be done using substr and instr. |
Week #2 Week of September 9th |
Please do not change any of the passwords we have given you. I need to be able to get to your site as does the IT staff
if there is a problem.
See the help times above. These are the notes that I will attempt to get through this week. More on maintaining an SQL table SQL functions More SQL functions Group SQL functions I may go further, so do check back. You should also look at the accompanying PowerPoint presentations: More on maintaining an SQL table Separate speaker notes for More on maintaining an SQL table SQL functions - part 1 character Separate speaker notes for SQL functions - part 1 characters SQL functions - part 2 numeric & date Separate speaker notes for SQL functions - part 2 numeric & date More SQL functions (includes DECODE, ways to edit SQL code and nested functions) Separate speaker notes for more SQL functions Group functions Separate speaker notes for group functions Always check back and see how we are doing! Assignments: Here is a script to create the emp table: Script to create emp table (createemp.sql) You can enter edit createemp.sql or another name at the SQL prompt. It will go into the editor and ask if you want to create a new script. Enter yes and paste the script in and save it. Return to the prompt and enter @ createemp.sql and it should run and create the table for you. If you are using putty, remember to have the script text in notepad and highlight it. When you go into the editor the right click will paste it or you can uses shift + ins to paste. You can then write and exit. Back at the SQL prompt is where you run it with the @. Inclass if statements (must be passed in by everyone) I want you to play computer and show me the output you think would be generated as opposed to running the query and letting Oracle give you the answer. Second SQL assignment Quiz 1 I am hoping your have already created a table that you can use for this quiz. If not you need to create one. I would suggest you create one that you can use with assignments from week 1 or week 2. Note that you need to show me the SQL and the results on all of the quiz questions. Check back! |
Week #1 Week of September 2nd |
I recommend one of the text books in the syllabus, but a textbook is not required. There is enough material on the web and in
my notes that I decided to make the book a recommendation. Please note that many students have found
it useful to have a copy of the text. I do recommend that you get one of these books or another book dealing with Oracle SQL
(we are using version 11g or 12c this semester) as a reference. We will not do chapter by chapter coverage, the text gives you
additional information on topics and a reference if you have questions. ional database information LOGIN information: You need to decide if you want to download Oracle, use the BCC labs or login from home using Putty. Note that there is a reference to help you download and instal under Using Oracle: Installation and login. Downloading Be very careful when you install, Oracle leaves a lot of footprints that makes reinstalling very difficult. You should have received the login information you need for this course. If not, let me know. PuTTY is available in the labs. Two sites that can be used to download PuTTY are: PuTTY download PuTTY download Using Putty (copy and paste) Basic steps to login to putty and get to Oracle: 1) Start putty and put in the hostname as cisweb.bristolcc.edu and the port as 220 2) At the login screen enter your username and your Linux password. 3) When you see that you are at cisweb, enter sqlplus12c.sh 4) You then connect to Oracle and need to enter your username and Oracle password 5) You should see the SQL prompt Now you can create a table. Note that after you create tables, to see existing tables select table_name from user_tables. Accompanying step-by-step notes First we will focus on getting into Oracle and then these are the notes that we will start to cover this week: Introduction to SQL in Oracle Create a table in SQL SQL Conditions These are the accompanying presentations: Presentations: Introduction to SQL in Oracle Separate speaker notes for Introduction to SQL in Oracle Create a table in SQL Separate speaker notes for Create a table in SQL SQL Conditions Separate speaker notes for SQL Conditions NOTES: Note: You can use the committ command to make sure your work gets saved. Copy from SQLPlus so you can paste it onto the document you are submitting as your assignent Assignments: I strongly urge you to do the COMMIT; after the table is created. Oracle assignment on introductory material (html) Oracle assignment on introductory material (doc) Comment on how I want the assignment: You should take the commands you do in SQL and the results and paste them into a word document. It should be similiar to the way I prepared the notes. You then send me the word document. I do not want you to show the screen itself or pictures of the screen - they are really hard to read! |