SlideShare a Scribd company logo
1 of 94
CIS 336 Final Exam (Feb 2016)
FOR MORE CLASSES VISIT
www.cis336study.com
Question 1. 1. (TCO 1) A DBMS performs several important functions
that guarantee the integrity and consistency of the data in the database.
Which of the following is NOT one of those functions?
Question 2. 2. (TCO 1) A relational DBMS provides protection of the
_____ through security, control, and recovery facilities.
Question 3. 3. (TCO 2) A relationship is an association between _____
Question 4. 4. (TCO 2) A _____ key is a key that is composed of more
than one attribute.
Question 5. 5. (TCO 3) The PK must uniquely identify each entity
instance. A primary key must be able to guarantee unique values. It
cannot contain nulls. This rationale belongs to _____
Question 6. 6. (TCO 3) The extended entity relationship model (EERM)
is sometimes referred to as the _____
Question 7. 7. (TCO 3) A table that has all key attributes defined, has no
repeating groups, and all its attributes are dependent on the primary key,
is said to be in _____
Question 8. 8. (TCO 4) When a constraint is created at the _____ level
with the CREATE TABLE command, the constraint definition is simply
included as part of the column definition. (Points : 4)
Question 1. 1. (TCO 4) When creating a table, which of the following
statements is NOT correct?
Question 2. 2. (TCO 4) Which of the following SQL statements would
you use to create a table named DEVRY?
Question 3. 3. (TCO 5) The Crow's Foot model is more _____-oriented
than the Chen model.
Question 4. 4. (TCO 5) Knowing the _____ number of entity
occurrences is very helpful at the application software level.
Question 5. 5. (TCO 6) The _____ statement can be used to enable or
disable a constraint.
Question 6. 6. (TCO 6) When modifying the data characteristics of a
column in Oracle, which of the following is correct?
Question 7. 7. (TCO 6) Which of the following keywords can be used to
change the size, datatype, or default value of an existing column?
Question 8. 8. (TCO 7) Any type of subquery can be used in the _____
clause of a SELECT statement
Question 1. 1. (TCO 7) Which of the following subqueries returns more
than one row of results to the outer query?
Question 2. 2. (TCO 7) To list a unique value, where the list will
produce only a list of those values that are different from one another,
you will write the command _____
Question 3. 3. (TCO 8) Based upon the contents of the BOOK_ORDER
table shown below, which of the following SQL statements will display
the ship date for order 1006 as April 2, 2002?
Question 4. 4. (TCO 8) Which of the following format elements will
display insignificant leading zeros?
Question 5. 5. (TCO 8) Which of the following functions determines the
number of characters in a character string?
Question 6. 6. (TCO 9) The column to be updated by the UPDATE
command is specified in the _____ clause.
Question 7. 7. (TCO 9) Using the promotion table shown below, which
of the following SQL statements will insert a new row into the
PROMOTION table?
Question 8. 8. (TCO 10) Which of the following commands is used to
establish a user account?
Question 9. 9. (TCO 10) Which command will delete a user account
from Oracle9i?
Question 1. 1. (TCO 2) Explain what physical independence means.
Question 2. 2. (TCO 3) What is a composite primary key and in what
situation are they most commonly used? Give an example.
Question 3. 3. (TCO 7) Sally needs to find all employees who have a
date of hire between 01-JAN-2003 and 01-JAN-2005. She writes and
executes the following query.
Question 4. 4. (TCO 8) In a table named ORDER, there is a column
named SHIPDATE that contains a date for each order that has been
shipped. Write the query that would show the number of orders that have
been shipped. List the column name as Number of Orders Shipped for
this derived column.
Question 5. 5. (TCO 6) Write the SQL statement that will remove the
database table EMPLOYEE.
Question 1. 1. (TCO 7) Write a join query that for every order placed on
September 5, 1998, (use '05-SEP-1998') will list the order number and
order date along with the customer number, last name, and first name of
the customer who placed the order.
Question 2. 2. (TCO 8) Write a query that will list the part number, part
description, and on-hand value (units on hand * unit price) for each part
in item class AP. Give the expression an alias of on-hand value.
Question 3. 3. (TCO 8) Write a subquery that will list the part number,
part description, and units on hand of all parts where the number of units
on hand is greater than the average of units on hand for all parts.
Question 4. 4. (TCO 7) Using the orders table, write a query that will list
the order number, date, and customer number for every order that was
made prior to September 5, 1998. Format the date in your result set to be
in the same format as above (i.e., September 5, 1998).
Question 5. 5. (TCO 7) Using a NATURAL JOIN method, write a query
that will list the customer number, last name, and first name for every
customer who currently has an order on file for an iron.
==============================================
CIS 336 Final Exam 1 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
1. (TCO 1) Most DBMS are referred to as
_____________database management systems. (Points : 4)
elemental
linked
hierarchical
relational
2. (TCO 1) Data constitutes the building blocks of
_____________. (Points : 4)
information
processing
applications
programming
3. (TCO 2) If a foreign key contains either matching values
or nulls, the table(s) that make use of such a foreign key
is/are said to exhibit __________ integrity. (Points : 4)
referential
restrictive
secondary
redundant
4. (TCO 2) In a "one-to-many" relationship, which
constraint is usually added to the "many" table?
(Points : 4)
UNIQUE
PRIMARY KEY
FOREIGN KEY
NOT NULL
5. (TCO 3) A ____ occurs when a relationship is improperly
or incompletely identified and, therefore, is represented in a
way that is not consistent with the real world. (Points : 4)
surrogate primary keys
time-variant data
design trap
fan trap
6. (TCO 3) All of the following are true about a prime
attribute except_____________. (Points : 4)
it is a key attribute
it is at least part of a key
it is not a key attribute
it may be part of a composite key
7. (TCO 3) The conflicts between design efficiency,
information requirements, and processing speed are often
resolved through_____________. (Points : 4)
conversion from 1NF to 2NF
conversion from 2NF to 3NF
compromises that include denormalization
conversion from 3NF to 4NF
8. (TCO 4) When a constraint is created at the ______ level
with the CREATE TABLE command, the constraint
definition is simply included as part of the column
definition.(Points : 4)
table
column
database
row
Page 2 - Multiple Choice
1. (TCO 4) In Oracle, the CONSTRAINT clause is used to
___________________. (Points : 4)
create only referential constraints
define and name any constraint
create a short cut so the constraint does not have to be
named
create only entity entegrity constraints
2. (TCO 4) The SQL command that lets you list the table
contents is (Points : 4)
insert.
select.
commit.
update.
rollback.
3. (TCO 5) The Crow's Foot model is more ___________-
oriented than the Chen model. (Points : 4)
object
user
implementation
processor
4. (TCO 5) The ___________ model is both software and
hardware dependent. (Points : 4)
conceptual
logical
condensed
physical
5. (TCO 6) Which of the following commands will add a new
column named FIRSTORDERDATE to the CUSTOMERS
table to store the date that the customer first placed an order
with the company? (Points : 4)
CREATE COLUMN firstorderdate, DATE TO customers;
ALTER TABLE customers ADD COLUMN firstorderdate
DATE;
ALTER TABLE customers ADD firstorderdate DATE;
ALTER TABLE customers ADD (firstorderdate DATE);
6. (TCO 6) When modifying the data characteristics of a
column in Oracle, which of the following is correct? (Points :
4)
The column size can be increased.
The size of the column can be decreased.
Changing the default value of a column will change the
values of data already in a table.
If a NUMBER column is empty, its precision and scale
cannot be changed.
7. (TCO 6) Which of the followig SQL commands would
alter the table DEVRY and add a foreign key that references
the CITY table? (Points : 4)
ALTER table DEVRY
ADD CONSTRAINT devry_studentcity_fk references city;
ALTER table DEVRY
ADD CONSTRAINT devry_studentcity_fk FOREIGN KEY
references city;
ALTER table DEVRY
ADD CONSTRAINT devry_studentcity_fk FOREIGN KEY
(student_city) references city;
ALTER table DEVRY
ADD CONSTRAINT FOREIGN KEY (student_city)
references city;
8. (TCO 7) Given a table named EMPLOYEE, the SQL
command to sort records in a specific order would be:
(Points : 4)
SELECT EMP_LNAME, EMP_FNAME, EMP_INITIAL,
EMP_AREACODE, EMP_PHONE
FROM EMPLOYEE
LIST BY EMP_LNAME, EMP_FNAME, EMP_INITIAL;
SELECT EMP_LNAME, EMP_FNAME, EMP_INITIAL,
EMP_AREACODE, EMP_PHONE
FROM EMPLOYEE
ORDER BY EMP_LNAME, EMP_FNAME,
EMP_INITIAL;
SELECT EMP_LNAME, EMP_FNAME, EMP_INITIAL,
EMP_AREACODE, EMP_PHONE
FROM EMPLOYEE
DISPLAY BY EMP_LNAME, EMP_FNAME,
EMP_INITIAL;
SELECT EMP_LNAME, EMP_FNAME, EMP_INITIAL,
EMP_AREACODE, EMP_PHONE
FROM EMPLOYEE
SEQUENCE BY EMP_LNAME, EMP_FNAME,
EMP_INITIAL;
Page 3 - Multiple Choice
1. (TCO 7) Which of the following subqueries returns more
than one row of results to the outer query? (Points : 4)
multiple-column subquery
single-row subquery
multiple-row subquery
correlated subquery
2. (TCO 7) Which of the following keywords can be used to
join two tables that do not contain a commonly named and
defined column? (Points : 4)
NATURAL JOIN
JOIN...ON
JOIN...USING
JOIN...WHERE
3. (TCO 8) Based upon the contents of the BOOKS table
shown below, which of the following SQL statements will
return the number of categories contained in the table?
(Points : 4)
SELECT COUNT(DISTINCT category) FROM books;
SELECT DISTINCT COUNT(category) FROM books;
SELECT DISTINCT (COUNT(category)) FROM books;
SELECT DISTINCT COUNT(category) FROM books;
4. (TCO 8) The _____________ function can be used to
display upper-case characters in lower-case. (Points : 4)
CONVERT
MIN
LESS
LOWER
5. (TCO 8) Which of the following statements will produce
the value 21.1? (Points : 4)
SELECT ROUND(21.12, 1) FROM dual;
SELECT ROUND(21.12, -1) FROM dual;
SELECT ROUND(21.12, 0) FROM dual;
SELECT ROUND(21.12, 0+) FROM dual;
6. (TCO 9) The column to be updated by the UPDATE
command is specified in the ______ clause. (Points : 4)
UPDATE
SET
WHERE
COL
7. (TCO 9) If the INSERT INTO command is used to insert
data values that violate an existing constraint in a table,
which of the following will happen. (Points : 4)
Oracle will raise an error and you will have to go update the
incorrect data.
Oracle will raise an error and the entire row will be rejected.
Oracle will raise an error and the invalid piece of data will
be rejected.
Oracle will raise and error and all current transactions will
be rolled back.
8. (TCO 10) Which of the following commands is used to
establish a user account? (Points : 4)
CREATE NEW USER username
IDENTIFIED BY password;
CREATE USERNAME username
IDENTITY password;
CREATE USER username PASSWORD password;
CREATE USER username IDENTIFIED BY password;
9. (TCO 10) Which command will grant a system privilege to
a user? (Points : 4)
GRANT systemprivilegeUSERNAME username
GRANT PRIVILEGE systemprivilegeTO username
GRANT systemprivilegeTO
username
GRANT systemprivilege ON
username
==============================================
CIS 336 Final Exam 2 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
1. (TCO 1) Most DBMS are referred to as
_____________database management systems. (Points : 4)
elemental
linked
hierarchical
relational
2. (TCO 1) A relational DBMS provides protection of the
_______________________ through security, control, and
recovery facilities. (Points : 4)
user
network
system
database
3. (TCO 2) If a foreign key contains either matching values
or nulls, the table(s) that make use of such a foreign key
is/are said to exhibit __________ integrity. (Points : 4)
referential
restrictive
secondary
redundant
4. (TCO 2) A field that consists of integer values is a
_________ type field. (Points : 4)
Date/Time
Yes/No
Memo
Numeric
5. (TCO 3) The PK must uniquely identify each entity
instance. A primary key must be able to guarantee unique
values. It cannot contain nulls. This rationale belongs to
____. (Points : 4)
Unique values
Nonintelligent
Preferably single-attribute
Security complaint
6. (TCO 3) A table that is in 1NF and includes no partial
dependencies only is said to be in_____________. (Points : 4)
1NF.
2NF.
3NF.
4NF.
BCNF.
7. (TCO 3) A table that has all key attributes defined, has no
repeating groups, and all its attributes are dependent on the
primary key, is said to be in_____________.(Points : 4)
1NF.
2NF.
3NF.
4NF.
BCNF.
8. (TCO 4) In Oracle, the DEFAULT constraint is used to
____________________. (Points : 4)
define which column is the default primary key if one is not
explicitly named
define which column is the default foreign key if on is not
explicitly named
assign a value to an attribute when a new row is added and a
value is not defined
validate data when a value is added to an attribute
Page 2 - Multiple Choice
1. (TCO 4) Which of the following is not considered a
database object? (Points : 4)
a table
a view
a constraint
a sequence
an index
2. (TCO 4) Which of the following SQL statements would
you use to create a table named DEVRY? (Points : 4)
CREATE Devry
(
Student_id NUMBER (12),
Student_name VARCHAR2 (15),
Student_city VARCHAR2 (12)
);
CREATE TABLE Devry
(
Student_id NUMBER (12)
Student_name VARCHAR2 (15)
Student_city VARCHAR2 (12)
);
CREATE TABLE Devry
(
Student_id NUMBER (12),
Student_name VARCHAR2 (15),
Student_city VARCHAR2 (12)
);
CREATE TABLE Devry
Student_id NUMBER (12),
Student_name VARCHAR2 (15),
Student_city VARCHAR2 (12);
3. (TCO 5) The ____ constraint requires that a specific
condition be met before a record can be added to a table.
(Points : 4)
UNIQUE
REFERENCE
CONDITION
CHECK
4. (TCO 5) The ___________ model is both software and
hardware dependent. (Points : 4)
conceptual
logical
condensed
physical
5. (TCO 6) The _________________________ statement can
be used to enable or disable a constraint. (Points : 4)
alter table
modify table
create table
update table
6. (TCO 6) When using the ALTER TABLE...DROP
COLUMN command, which of the following is not correct?
(Points : 4)
The command's effect on the table is permanent.
You cannot delete the last remaining column in a table.
The command deletes both the column and its contents.
The command can be used to delete multiple columns from a
table.
7. (TCO 6) Which of the following keywords can be used to
change the size, datatype, and/or default value of an existing
column? (Points : 4)
ADD
MODIFY
CHANGE
RESET
8. (TCO 7) Any type of subquery can be used in the
_________ clause of a SELECT statement. (Points : 4)
WHERE
HAVING
FROM
ORDER BY
GROUP
Page 3 - Multiple Choice
1. (TCO 7) Using the BOOK_CUSTOMER and
BOOK_ORDER tables shown below for references, which
SQL statement will return the same results as the following
SQL statement?
SELECT * FROM book_customer, book_order;
(Points : 4)
SELECT * FROM book_order CROSS JOIN
book_customer;
SELECT * FROM book_order, book_customer
WHERE book_order.customer# =
book_customer.customer#;
SELECT * FROM book_order, book_customer
WHERE book_order.customer#
>book_customer.customer#;
SELECT * FROM o book_order , c book_customer
WHERE o.customer# = c.customer#;
2. (TCO 7) If a Cartesian join is used to link table A which
contains five rows to table B which contains eight rows,
there will be _______ rows in the results. (Points : 4)
8
13
5
40
3. (TCO 8) Based upon the contents of the BOOK_ORDER
table shown below, which of the following SQL statements
will display the ship date for order 1006 as April 2, 2002?
(Points : 4)
SELECT order#, TO_CHAR(shipdate, 'fmMonth DD,
YYYY')
FROM book_order;
SELECT order#, TO_DATE(shipdate, 'fmMonth DD,
YYYY')
FROM book_order;
SELECT order#, TO_CHAR(shipdate, 'Month DD, YYYY')
FROM book_order;
SELECT order#, TO_DATE(shipdate, 'Month DD, YYYY')
FROM book_order;
4. (TCO 8) Based upon the contents of the BOOK_ORDER
table shown below, which of the following SQL statements
will display only those orders shipped to the zip code zone
that begins with 323?
(Points : 4)
SELECT order#, SUBSTR(shipzip, 1, 323)
FROM book_order;
SELECT order#, SUBSTR(shipzip, 1, 323)
FROM book_order
WHERE ;
SELECT order#
FROM book_order
WHERE (shipzip, 1, 323);
SELECT order#
FROM book_order
WHERE SUBSTR(shipzip, 1, 3) = 323;
5. (TCO 8) Which of the following functions determines the
number of characters in a character string? (Points : 4)
COUNT
NUMBER
LENGTH
DECODE
6. (TCO 9) Which of the following is not a valid SQL
command? (Points : 4)
UPDATE acctmanager SET WHERE ;
UPDATE acctmanager SET (amname);
UPDATE acctmanager SET (amname) WHERE ;
UPDATE acctmanager WHERE ;
7. (TCO 9) Using the promotion table shown below, which of
the following SQL statements will insert a new row into the
PROMOTION table?
(Points : 4)
INSERT INTO promotion (gift, minretail, maxretail)
VALUES (FREE BOOK, 75.01, 89.99);
INSERT INTO promotion (gift, minretail, maxretail)
VALUES ('FREE BOOK', 75.01, 89.99);
INSERT INTO promotion VALUES (FREE BOOK, 75.01,
89.99);
INSERT INTO promotion (gift, minretail)
VALUES (FREE BOOK, 75.01, 89.99);
8. (TCO 10) A ____ is a uniquely identifiable object that
allows a given person to log on to the database. (Points : 4)
user
role
profile
manager
9. (TCO 10) Which command will delete a user account from
Oracle9i? (Points : 4)
DELETE USER username;
DELETE USER username IDENTIFIED BY password;
DROP USER username IDENTIFIED BY password;
DROP USER username;
Page 4 - Essays
1. (TCO 2) What is Character data? (Points : 15)
2. (TCO 3) Explain the term "second normal form". (Points
: 15)
3. (TCO 7) Sally needs to find all employees who have a
date-of-hire between 01-JAN-2003 and 01-JAN-2005. She
writes and executes the following query:
4. (TCO 8) In using group functions we cannot place a group
function in a WHERE clause. Explain how the WHERE
clause and HAVING clause are similar and why you can use
the HAVING with a group function but not a WHERE
clause. (Points : 15)
5. (TCO 6) Write the SQL statement that will remove the
database table EMPLOYEE. (Points : 15)
1. (TCO 7) Write a join query using NATURAL JOIN that
for every order in the ORDERS table will list the order
number and order date along with the cusnumber, last
name, and first name of the customer who placed the order.
2. (TCO 8) Write a query that will list the part number, part
description, and on-hand value (units on hand * unit price)
for each part in item class AP. Give the expression an alias
of "On Hand Value".
3. (TCO 8) Write a sub query that will list the part number,
part description, and units on hand of all parts where the
number of units on hand is greater than the average of units
on hand for all parts.
4. (TCO 7) Using the BETWEEN operator, write a query
that will list all details about all orders that were placed
during the period of September 3rd thru September 5th of
1998.
5. (TCO 7) Write a query that will list the part number and
part description for all parts in the PART table.
(Points : 15)
==============================================
CIS 336 Final Exam 3 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
1. (TCO 2) Explain what physical independence means.
(Points : 15)
2. (TCO 8) Sally wants to query the EMP table and
determine how many of the employees live in each of the
cities the company has factories in. She writes the following
query but it does not work. What is wrong with the way the
query is constructed?
3. (TCO 3) Explain in what two specific cases presented in
the text composite primary keys are particularly useful.
(Points : 15)
4. (TCO 7) How are comparisons done on character string
data in a queries WHERE clause, and why would this be
especially useful in comparing certain attributes? (Points :
15)
5. (TCO 6) Oracle will not allow the changing of a column's
data type unless the column is empty, and even then it may
still be prohibited. Discuss why? (Points : 15)
6. (TCO 7) Write a join query using NATURAL JOIN that
for every order in the ORDERS table will list the order
number and order date along with the cusnumber, last
name, and first name of the customer who placed the order.
7. (TCO 8) Write a query that will list the part number, part
description, and on-hand value (units on hand * unit price)
for each part in item class AP. Give the expression an alias
of "On Hand Value".
8. (TCO 8) Write a query that will display the customer
number, first name, and last name for every customer with a
balance greater than $50. Display the first and last name as a
single column and provide an alias for the column.
9. (TCO 7) Write a query that will list the customer number,
last name, and first name for every customer represented by
sales rep 03 or sales rep 12.
10. (TCO 7) Write a query that will list the customer first
and last name and the sales rep commission rate using JOIN
ON.
==============================================
CIS 336 Final Exam 4 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
1. (TCO 7) For every order, list the order number, order
date, part number, part description, and item class for each
part that makes up the order.
2. (TCO 8) Write a query that will display the customer
number, last name, and first name for every customer I
whose first name begins with the letter "D".
2. (TCO 8) Write a query that will display the earliest date
an order was placed.
3. (TCO 7) Using the BETWEEN operator, write a query
that will list all details about all orders that were placed
during the period of September 3rd thru September 5th of
1998.
5. (TCO 7) Write a query that will list the customer first and
last name and the sales rep commission rate using JOIN ON.
=============================================
=
CIS 336 Final Exam 4 Sets of Answers (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
CIS 336 Final Exam 4 Sets of Answers
==============================================
CIS 336 Group Project
FOR MORE CLASSES VISIT
www.cis336study.com
This project is designed to touch all aspects of the fundamental concepts
of database design and logical data modeling covered during the class.
Each student will be responsible for designing, developing, and
demonstrating the functionality of a database created based on a set of
business specifications that you create. At the end of the session, each
student will submit a report that includes the logical and physical design
of the database and demonstrates the database's ability to deliver
meaningful reports. All aspects of the project will be covered during the
week or weeks prior to a deliverable, and each task deliverable in the
project will be supported through the exercises and labs done in the
course.
Guidelines
You will create a proposal for a commerce business of your choosing.
This can be an actual or fictional business that sells products and/or
services. You will determine the business rules and report requirements.
Entities that must be included in your model are the following.
Customer
Product (or Service)
Order
Project Deliverables
This task is broken down into four deliverables.
· Task 0
· Task 1
· Task 2
· Task 3
Remember that this is a work in progress and in all likelihood, you will
have to make numerous changes to your tables and schema as you go
along. These changes are to be expected and are a normal part of the
database design and implementation process.
Please refer to the sections below for details regarding deliverables for
each task.
Task 0
The first task is to create your business narrative. Some of the questions
that you should address include (but are not limited to) the following.
· What is the name of your business?
· Who will be the users of the system (managers, employees,
customers)?
· What product(s) and or service(s) does it sell? Be specific.
· Who are the customers? What is the customer base?
· What sales and distribution channels are used?
· How are payments made?
· Are products delivered or shipped to customers in some way?
· Are sales reps involved? Are they paid on commission?
· What type of reports are needed by the business?
Please include as much detail as possible in order to provide a
foundation for Task 1. Submit your proposal as a Word document. Note
that this proposal may be revised in the coming weeks as your
understanding of the database modeling process grows.
Task 1
Develop a detailed logical model of your database based on your
business scenario submitted for Task 0. Your data model will include an
entity-relationship diagram (ERD) developed with Microsoft Visio or
MySQL and a data dictionary (DD) developed with Microsoft Excel.
Note that your deliverables each week include any revisions to the
previous task.
Submit your Task 1 deliverable as a zip file including the following.
· Task 0 proposal (with any revisions or updates)
· Your ERD copied to a Word document that fits on a single 8 x 10
page
· Your DD (Excel file)
Task 2
First, make sure to make any necessary revisions to your logical model
based on Task 1 feedback. Using MySQL, write the statements to
develop a physical model of your database by creating the tables and
constraints based on your Task 1 logical model. Be sure to use your
ERD and data dictionary and create all constraints appropriately.
Once your tables are created, you will populate them with data using
MySQL statements to insert records into the database. You should insert
a minimum of five records into each table and more where necessary to
ensure that the data in the database is sufficient to allow for each of your
reports to be tested.
The result will be a script file that includes statements to
· DROP all tables;
· CREATE all tables with constraints;
· INSERT data into all tables; and
· SELECT data from all tables to show the data in each table.
Name this file yourname_task2.txt.
Also create a Word document that shows the structure of each table and
the data in each of your tables (copy and paste from MySQL). Name this
file yourname_tables.docx.
Note that your deliverables each week include any revisions to a
previous task.
Submit your Task 2 deliverable as a zip file including the following.
· Task 0 proposal (with any revisions)
· Your Task 1 ERD (with any revisions)
· Your Task 1 DD (with any revisions)
· Your Task 2 script file to create and populate tables
(yourname_task2.txt)
· A Word document showing all tables and data
(yourname_tables.docx)
Task 3
Your final task is to use your tables for an update and for reports. There
are two requirements.
1. You will demonstrate an update that includes two tables and uses a
subquery. Make sure to prove that your update executed correctly by
showing data in the tables before and after the update.
2. You will also develop at least four meaningful reports. One must
include a join, one must use a subquery, and one must use an aggregate
function. You need to describe the business requirement of the update
and each report. Note that numeric PK values are not often meaningful
to a person looking at the report. You will create a script file that has
each of the queries called yourname_task3.txt. You will also document
the results of this task in a Word document called
yourname_reports.docx to show the result of each query. For the update
and each report,
· describe the update and report requirement;
· show the query; and
· show the result of the query.
Include a final section for Conclusions and Lessons Learned regarding
the project.Note that your deliverables each week include any revisions
to a previous task.Submit your Task 3 deliverable as a zip file including
the following.
· Task 0 proposal (with any revisions)
· Your Task 1 ERD (with any revisions)
· Your Task 1 DD (with any revisions)
· Your Task 2 script file to create and populate tables (with any
revisions)
· A Word document showing all tables and data (with any
revisions)
· Your Task 3 script file with update and reports
(yourname_task3.txt)
· A Word file with results of Task 3 and lessons learned
(yourname_reports.docx)
==============================================
CIS 336 iLab 1 Normal Forms and Entity Relationship
Diagrams
FOR MORE CLASSES VISIT
www.cis336study.com
CIS336 Lab 1: Normal Forms and Entity Relationship Diagrams
Introduction
In this exercise, you will analyze a de-normalized data set presented in
the form of a spreadsheet. You will next construct a series of
dependency diagrams, transforming the evolving data model from
First Normal Form (1NF), to Second Normal Form (2NF), and finally
to Third Normal Form (3NF). When the model has reached 3NF, you
will construct the Entity Relationship Diagram (ERD) depicting the
logical design of the database. Your ERD will use Crow’s Foot
notation to denote the relationships between tables.
Sample Exercise, With Solution
Before completing your lab, please review this example problem. The
diagram below is a partial depiction of a business spreadsheet for a
retail store operation. The store sells books. Books have a 13-digit
International Standard Book Number (ISBN), a title, a publisher, and
a unit price. Invoices track sales of books. An Invoice contains one or
many line items, with each line item reflecting the sale of one or more
copies of a specific book. Every publisher has a company name, and a
publisher code.
InvNum ISBN13 InvDateBookTitlePubCodePubNameQtyunitPrice
1022 9781291940336 2015-03-09 MYSQL Functions 1001 Lulu.com 3
4.99
1022 9780321833877 2015-03-09 MySQL, Fifth Edition 1029
Addison-Wesley 5 33.95
1022 9781890774820 2015-03-09 Murach’s MySQL, 2nd Edition 1032
Murach, Mike & Associates, Inc 2 48.95
1249 9781449374020 2015-02-22 MySQL Cookbook: Solutions for
Database Developers and Administrators 1118 O’Reilly Media,
Incorporated 9 50.59
1249 9781449325572 2015-02-22 PHP & MySQL: The Missing
Manual 1118 O’Reilly Media, Incorporated 6 29.95
1249 9781890774790 2015-02-22 Murach’s PHP and MySQL, 2nd
Edition 1032 Murach, Mike & Associates, Inc 1 48.95
BookSales
1. Using the BookSales table structure shown above, draw the
dependency diagram, and show all dependencies, full, partial, and
transitive.
Figure 1 -solution 1
Discussion: A composite primary key consisting of InvNum + ISBN13
can be constructed, ensuring that all rows are unique. All remaining
attributes are shown to be dependent (at least partially) on this
composite key, so the table is 1NF. Further analysis shows that
InvDate is dependent on only part of the key (InvNum), and that
unitPrice, PubCode, and BookTitle also depend on part of the key
(ISBN13). A transitive relationship is also revealed: PubName truly
depends on PubCode, which in turn depends on ISBN13.
2. Using the answer to exercise 1, remove all partial dependencies and
draw the new dependency diagrams. For each new table created,
specify its normal form (1NF, 2NF, 3NF).
Figure 2- solution 2
Discussion: To achieve 2NF, we must remove partial dependencies.
This is done by decomposing into three tables, and three dependency
diagrams at this stage. Notice that the Transitive relationship has not
yet been addressed.
3. Using the answer to exercise 3, remove all transitive dependencies,
and draw the new dependency diagrams. For each new or revised
table, specify its normal form.
Figure 3 – Solution 3
Discussion: The transitive relationship has been removed by creating
the Publishers table, in which PubName is fully dependent upon
PubCode. Pubcode also persists as a dependent attribute and Foreign
Key in Books. All tables are now in 3NF, and have been given
meaningful names reflecting the entities they represent. LINEITEMS
represents the collection of line items for all invoices. Invoices
represents the collection of Invoices for all customer orders. Books
makes up the list of all books available for sale (whether they have
ever been ordered or not). Each book has a publisher, and the
publisher code and Name reside in the Publishers table.
4. Draw the ERD for exercise 3, using Crow’s Foot notation.
End of Sample Exercise.
Student Exercise
The student exercise for this lab is similar to the sample exercise
presented above.
Consider the following spreadsheet containing information about
customers, their shipping and billing addresses, and the countries
corresponding to each of those addresses. A customer may be
associated with zero to many addresses. A customer may have 0 or 1
default billing address. A customer may have 0 or 1 default shipping
address. Each address may be associated with 0 or 1 countries, while
each country may be associated with 0 to many addresses.
cust_idfnamelnamedef_bill_addr_iddef_ship_addr_idaddr_idstreet_ad
dr city state zip country_codecountry_name
202 John Smith 1096 2039 1096 123 Happy Ave. Orlando FL 32801
76 United States
202 John Smith 1096 2039 2039 2024 Shorline Dr. Seattle WA 98101
76 United States
202 John Smith 1096 2039 8053 100 N. Kent Ave. St. James WA 34
Jamaica
175 Hilda Yeager 2172 2172 3879 48 Spatzel Ct. Dusseldorf 5111 29
Germany
175 Hilda Yeager 2172 2172 3921 162 Rue Moritz Paris 75001 28
France
321 Siri Apple 1881 1881 1881 1 Infinite Loop Cupertino CA 95014 76
United States
Using the example solution as a guide, perform the following steps.
1. Using the CustomerAddressCountry spreadsheet show above, draw
the dependency diagram, and show all dependencies, full, partial, and
transitive. Paste your solution into the answer sheet, and label it,
Answer #1.
2. Using the answer to exercise 1, remove all partial dependencies and
draw the new dependency diagrams. For each new table created,
specify its normal form (1NF, 2NF, 3NF). Paste your solution into the
answer sheet, and label it, Answer #2.
3. Using the answer to exercise 3, remove all transitive dependencies,
and draw the new dependency diagrams. For each new or revised
table, specify its normal form. Paste your solution into the answer
sheet, and label it, Answer #3.
4. Draw the ERD for exercise 3, using Crow’s Foot notation. Paste
your solution into the answer sheet, and label it, Answer #4.
==============================================
CIS 336 iLab 2 The Expanded Entity Relationship Diagram
FOR MORE CLASSES VISIT
www.cis336study.com
CIS336 Lab 2: The Expanded Entity Relationship Diagram
LAB OVERVIEW
Scenario and Summary
This lab introduces the next step in creating a data model, the Entity
Relationship Diagram (ERD). You will be given a business scenario
for a University Medical Center, which is a small community hospital.
The business specifications will outline a number of things about the
business, some of which will apply directly to the database you are
being asked to model. There is a table that lists the entities (tables) that
will be needed for the database and related attributes (columns) for
each entity. There is also a column that lists specific information about
the entity that will be helpful in determining its relationship to other
entities within the model.
Be sure to include the minimum and maximum occurrences of each
relationship (cardinality) and to supply a name to the relationship that
will work in both directions. Make sure to use Crow’s Feet notation in
your ERD.
Narrative/Case Study
The University Medical Center is a small, community hospital. A new
hospital administrator has recently been hired by the Board of
Directors, and directed to right-size patient care and pharmacy
services and improve profitability. The hospital operates three clinical
facilities: the main hospital, a mid-town clinic, and an Urgent Care
location. The hospital also offers selected in-home care services. Many
of the patients are repeat or regular patients who receive regular
treatment for various conditions, and many utilize the hospital’s
pharmacy services for prescription medications.
The pharmacy dispenses about 3,000 different prescription
medications of various kinds. Every prescription is associated with one
patient, and is logged by the dispensing clinic. The new administrator
wants to know which drugs are most prescribed, and also which are
the most profitable.
The following is some general information about the organization and
its current processes.
• The hospital operates three clinical facilities.
• A healthcare worker logs in at a facility at the start of a shift and logs
out at the end.
• The name, address, Social Security number and other information is
recorded for every healthcare worker.
• All healthcare workers have one billing rate, which is determined by
their job description.
• Each medication dispensed by prescription is linked to both the
prescription number and the medication ID number, recording the
item price and the quantity dispensed.
As a convenient and affordable means of providing hospice care,
palliative care, and convalescent care to patients that need
occasional/intermittent skilled nursing, but do not require
hospitalization, the hospital offers limited in-home care. Recording of
in-home care includes the healthcare worker ID, their departure time
and return time, and also the prescription ID for any prescriptions
administered by the healthcare worker in the home setting.
The hospital administrator would like to know what home-care visits
have been made to whom, by whom, when, and how long they took.
There is concern at this point that the cost of providing limited home
healthcare is not providing adequate return on investment, and the
program should be revised or discontinued.
Requirements
You have been asked to develop a logical data model for University
Medical Center based on the information given to you by the new
hospital administrator and their staff. Through analysis of the nouns
and verbs in the case study above, you have accumulated the following
entity, attribute, and relationship information shown in the table
below. The attribute list may not be complete. If you determine that
additional attributes are needed to better define an entity, then you
should add them.
Entities Attributes and Relationships for University Medical Center
(Parallel Lab Exercise):
Entity Attributes Relationships
HealthcareWorkerHealthcareWorkerID, LastName, FirstName, SSN,
Address, City, State, Zip, Phone Number, HealthcareWorkerTypeID A
healthcare worker can belong to any one of the three job categories,
but can belong to one and only one of the three. healthcare worker has
names and other contact information.
HealthcareWorkerTypeHealthcareWorkerTypeID,
HealthcareWorkerTypeDesc, HourlyBillingRate A healthcare worker
can be either a physician (diagnoses, prescribes medication), nurse
(provides physician-ordered treatments, administers medications), or a
pharmacist (dispenses, delivers medication).
ClinicLogClinicLogID, ClinicID, Login, Logout, HealthcareWorkerID
Patients may be treated by a healthcare worker at a clinic and can be
tracked by the clinic log number. A healthcare worker must sign into
the clinic before he or she can serve patients, and must sign out when
finished treating patients at that clinic. A healthcare worker may serve
portions of a shift at more than one clinic.
Clinic ClinicID, ClinicLocationDesc, AMAAccredNum The hospital
operates three clinical facilities: General Hospital, Midtown Clinic,
and Urgent Care.
InHomeCareInHomeCareID, HealthcareWorkerID, PrescriptionID,
DepartTime, ReturnTime. Relates to both the healthcare worker and
the prescription entities. This entity will help track provision of home
healthcare. A healthcare worker can provide many home visits but a
prescription is administered on a home visit by one and only one
healthcare worker.
Method MethodID, Method Description Relates to medication and
identifies the method of administration, for example, oral, injection,
and so on.
Medication MedicationID, MedicationName, Dosage, Cost,
QuantityOnHand, LastPurchasedDate, ReorderMinimum Identifies
the medication the hospital pharmacy dispenses. One or more
medications can be dispensed per prescription. The quantity on hand
allows Pharmacists to determine the inventory levels. The reorder
minimum can be used to determine when the inventory level has
reached a reorder point.
Prescription PrescriptionID, MedicationID, BillingAmount,
TransactionDateTime, ClinicLogID, PatientID A prescription is
identified by a single prescription order. Prescriptions are
• made to one or more patients but only one patient at a time;
• made by one or more pharmacists but only one pharmacist per
prescription;
• recorded on one or more clinics but only one clinic per prescription;
and
• administered by one or more nurses but no one prescription can be
administered by more than one nurse.
PrescribedMedicationPrescriptionID, MedicationID, ItemPrice,
QuantityDispensed Prescribed medication is part of a prescription and
records medication dispensed per prescription. Prescribed medication
must be able to associate multiple medications sold on a single
prescription number.
Patient Patient Number, First Name, Last Name, Address, City, State,
Zip, Phone Number A patient can be associated with multiple
prescriptions, but any one prescription is to one and only one patient.
A prescription can occur without a patient registering in the system
(e.g., an unconscious patent arrives by ambulance in the emergency
room and receives life-saving emergency treatment).
Using an appropriate drawing/data modelling tool, develop an ERD
that meets the following guidelines.
• Draw the entities with their attributes.
• Indicate the relationships between the entities using Crow’s Foot
notation. You will need to determine the cardinality and optionality for
each direction of the relationships. Some of the Foreign Key
relationships are identified in the graph above but not all. Be sure you
identify and account for all Foreign Key relationships.
• Add a name (in both directions) to the relationships. Remember, if
you can verbalize the relationship in both directions, then you
probably have a valid relationship.
Deliverables
The deliverable for this lab will be your completed ERD as a single MS
Word document using copy/paste or imported as an image from your
drawing/modelling application, cropped and sized appropriately (it
should fit on a single page), and named lab2_solutions_yourname.
LAB STEPS
STEP 1: Drawing Entities and Attributes
Back to Top
Be sure to include all of the entities that have been defined. You need
to include at least the primary and foreign key attributes where
applicable in your diagram.
STEP 2: Add Relationships
Back to Top
Be sure that you link all entities based on PK to FK relationships.
There may be a case where you need to identify a combination PK and
if so make sure that all of the relationships involved are defined. Be
sure that you have set your drawing/modelling tool set to show Crow’s
Foot notation. Also, be sure that you are defining the correct
cardinality for the relationships.
STEP 3: Naming of relationships
Back to Top
If your drawing/modelling tool creates a default name for
relationships, do not simply accept this default without due
consideration. There may be some relationships where the default is
applicable, but in most cases you will want to explicitly name the
relationship. Be sure that you have provided a verb phrase for both
directions in the relationship.
This is the end of lab #2#4.
==============================================
CIS 336 iLab 3 Building the Physical
FOR MORE CLASSES VISIT
www.cis336study.com
CIS-336: Lab 3: Building the Physical
LAB OVERVIEW
Scenario and Summary
The lab for this week addresses taking a logical database design (data
model) and transforming it into a
physical model (tables, constraints, and relationships). As part of the
lab, you will need to download the
zip file titled CIS336Lab3Files from Doc Sharing. This zip file
contains the ERD, Data Dictionary, and test
data for the tables you create as you complete this exercise.
Your job will be to use the ERD Diagram found below as a guide to
define the table structures and
constraints using both CREATE TABLE and ALTER TABLE
statements. Once this has been done, you will
need to write the INSERT INTO TABLE statements to insert the data
provided into the table. The data
should verify that the constraints you have created are valid and define
the correct referential and data
integrity constraints asked for. Lastly, you will write SELECT
statements to query the tables and verify
the data was populated. Please use exactly the data provided, without
addition, deletion, or alteration
except as directed, as your results may be evaluated against expected
results generated using this exact
data set.
Narrative/Case Study
For this lab, you will be creating SQL statements to build a series of
relational tables, using SQL CREATE
statements in a script file format for the Student Database. You will
then populate those tables through
the use of INSERT statements with sample data.
You will need to create a script file and name it YourName_Lab3.txt
containing the following code.
1. The drop table statements listed later in the specifications of this lab.
2. The CREATE TABLE statements required to build the six tables.
3. The INSERT statements necessary to insert all of the sample data.
4. Six select statements to verify that the data is in the tables and
accessible.
To help you accomplish this task successfully, you are being supplied
with the ERD Diagram which
follows, and the exact data to be inserted into each table, which may be
found via the Doc Sharing tab
on the course website.
The following guidelines are being provided to help assist you in
creating your script file.
· Use the names for the tables and columns as listed in the ERD. Do
not change them as it will
affect your grade.
· Creating Constraints
o Create all NOT NULL constraints as indicated in the ERD.
o Create all PK constraints as indicated in the ERD.
o Create all FK constraints as indicated in the ERD.
· Create all of the tables and all of the constraints before populating
any of the tables with data.
· Because FK constraints will be in place when the insert statements
are executed, you will need
to consider carefully which tables must be created before others in
order to ensure that FK
constraints are not violated.
· The COURSE table has a self-referencing FK constraint.
Specifically, some courses have
prerequisite courses. Consequently, the record for a course possessing
a prerequisite course
cannot be successfully inserted into the table unless the record for the
prerequisite course has
already been inserted. This may require you to reorder the insert
statements to resolve FK
violations when loading the table. You may reorder the data provided
for this table, but do not
alter it.
· The data for one table intentionally contains a record containing an
FK constraint that is not
resolved by a record in the parent table. This orphaned record has
been included as an exercise
for you to find. Because this record has an unreconciled FK
constraint, it cannot be successfully
inserted. You will need to delete or comment out the insert statement
for this one record in
order to produce a script that runs without errors.
· Aside from reordering the data for the COURSE table as necessary,
and commenting
out/deleting the ONE record whose FK dependency cannot be resolved
by the data provided,
you are NOT to modify, add to, or delete from the data provided. Your
SQL script must produce
tables containing data identical to the expected solution set, or points
will be deducted.
· ALL character strings must be enclosed in single quotes. This
includes alpha strings and
alphanumeric (remember that any formatting within a numeric string
makes it alphanumeric).
· If you are inserting a NULL, do not enclose the word NULL in single
quotes, as this will insert the
word NULL into the row. To insert a null you simply use the word
NULL.
Deliverables
The deliverable for this lab will include the following documents.
1. Your script file. Create this file in Notepad, or another PURE TEXT
editor—NOT Word. Make sure
your name is in a comment area at the top of the script file. Use a
double dash to create a one-
line comment.
–Jane Smith
–Lab 3
2. Your script file must execute without error. It is recommended that
you begin early in the week,
and post any questions to the Q & A discussion in order to produce a
working script by the due
date.
Be sure your name is on all documents and that all documents have
been included in a single zip file for
this week’s assignments.
Refer to the following ERD in constructing your solution.
Student
PKStudent_ID
Salutation
First_Name
Last_Name
Street_Address
Phone
Employer
Registration_Date
FK1Zip
Enrollment
PK,FK1Section_ID
PK,FK2Student_ID
Enroll_Date
Final_Grade
LAB STEPS
STEP 1: The DROP Statements
A DROP TABLE statement must appear in your script file, prior to the
SQL statements for creating
the table in question. This will allow you to run and re-run your script
file as often as you need to. The
very first time you run your script the table does not exist, so the IF
EXISTS clause causes the statement
to be ignored. Thereafter, the table will be deleted, ensuring that your
CREATE TABLE statement creates
the table fresh and clean, with only the attributes present in the
current revision of the CREATE
statement. Here is an example of one of the six DROP TABLE
statements you will need to create.
DROP TABLE IF EXISTS `ENROLLMENT` ;
STEP 2: The CREATE TABLE Statements
Next, define the CREATE TABLE statements for the six tables that
you are to create based upon the
ERD (provided above) for this lab. Be sure to follow the guidelines
given above on how and where to
create the different types of constraints for each table. This will
include PK, FK, and NOT NULL
constraints.
STEP 3: The INSERT Statements for the Data
The third step is to create the insert statements to insert the sample
data into the tables created in
Step 2. The data for each table is contained in text files, named for the
table whose data it contains.
Modify the format of the data (e.g., date formats and add or eliminate
quote marks) as needed to craft
your insert statements, but do not change the inherent value of the
data.
STEP 4: The SELECT Statements
The next step of the lab will be to create the select statements to verify
the data was inserted
correctly. You should have six select statements; one for each table.
The command is SELECT * FROM
Table_Name; For example, to select all columns from the Student
table, the command would be
SELECT * FROM student;
Be sure to save all of the above statements in your script file.
STEP 5: Testing and Verifying Your Script
Now we come to the point of verifying that your script file works by
creating all of the tables and
inserting and selecting all of the data. Your script should execute
without errors, and select the entire
contents of each table in turn. Inspect your query results to ensure that
each column and row from
each of the tables is as expected. Correct and repeat testing of your
script until no errors occur, and the
results match expectations. You may also use the DESCRIBE
command to display the table structure of
each table, and verify that PK and NULL constraints have been
properly created. The SHOW CREATE
TABLE statement is useful for displaying the SQL that would
regenerate a given table, which is a useful
way for checking that FKs have been properly created.
Examples:
DESCRIBE STUDENT;
SHOW CREATE TABLE STUDENT;
This is the end of Lab 3_____
==============================================
CIS 336 iLab 4 Introduction to Select, Insert, Update, and
Delete Statements (only SQL Command, No output)
FOR MORE CLASSES VISIT
www.cis336study.com
CIS336: Lab 4: Introduction to Select, Insert, Update, and Delete
Statements
LAB OVERVIEW
Lab 4 will introduce the various aspects of the SQL select statement
and the methods of retrieving data from the database tables. This lab
will also introduce the fundamentals of updating and deleting records.
This lab may be completed using either DeVry’sOmnymbus EDUPE-
APP lab environment, or a local copy of the MySQL database running
on your own computer using the OM database tables. The lab will
utilize a set of tables that are represented by the ERD (OM_ERD.docx)
and are created and populated by the script file (create_OM_db.sql).
Follow the instructions in the file CreateOMTables.docx to create your
database, tables, and data.
A few IMPORTANT things to note if using EDUPE MySQL:
**There can be NO SPACES in alias names given to a column. For
example:
Select unit_price as “Retail Price “ from items; –this does NOT work
in EDUPE MySQL.
Any of the following WILL WORK:
Select unit_price as “RetailPrice” from items;
Select unit_price as “Retail_Price” from items;
Select unit_price as Retail_Price from items;
Select unit_price as RetailPrice from items;
**Any calculated fields MUST be given an alias (and note above NO
SPACES in alias). For example:
select unit_price * 2 from items; –this does NOT work in EDUPE
MySQL
This will work:
select unit_price * 2 as NewPrice from items;
Deliverables
• Lab Report (Answer Sheet) containing both the student-created SQL
command(s) for each exercise, and the output showing the results
obtained. Be sure your name is on the file.
LAB STEPS: Complete each of the exercises below.
1. Write a query that displays a list of all customers showing the
customer first name, last name, and phone number. Sort the results by
customer last name, then first name.
2. Write a query that displays each customer name as a single field in
the format “firstnamelastname” with a heading of Customer, along
with their phone number with a heading of Phone. Use the IN
operator to only display customers in New York, New Jersey, or
Washington D.C. Sort the results by phone number.
3. Write a query that will list all the cities that have customers with a
heading of Cities. Only list each city once (no duplicates) and sort in
descending alphabetical order.
4. Write a query that displays the title of each item along with the price
(with a heading of Original) and a calculated field reflecting the price
with a 25% discount (with a heading of Sale). Display the sale price
with two decimal places using the ROUND function. Sort by price
from lowest to highest.
5. Write a query that displays the customer_first_name,
customer_last_name, and customer_city from the customers table. Use
the LIKE operator to only display customers that reside in any zipcode
beginning with 4.
6. Write a query that displays the order id and order date for any
orders placed from March 1, 2014 through April 30, 2014. Do this
WITHOUT using the BETWEEN clause. Format the date field as
Month dd, yyyy and use a heading of “Ordered”.
7. Write a query that displays the order id and order date for any
orders placed during the month of May, 2014. Do this using the
BETWEEN clause. Format the date field as mm/dd/yy and use a
heading of “Ordered”.
8. Write a query which displays the order id, customer id, and the
number of days between the order date and the ship date (use the
DATEDIFF function). Name this column “Days” and sort by highest
to lowest number of days. Only display orders where this result is 15
days or more.
9. Write a query which displays the order id, customer id and order
date for all orders that have NOT been shipped, sorted by order date
with the most recent order at the top.
10. The Marketing Department has requested a new report of shipped
orders for which the order was placed on either a Saturday or a
Sunday. Write a query which displays the order id, order date, shipped
date, along with a calculated column labeled “Order_Day” showing
the day of the week the order was placed (use the DAYNAME
function). Only display orders that have shipped and were placed on a
Saturday or Sunday. Sort by order date with most recent orders at the
top.
11. Write a query to display the customer last name, phone number,
and fax number but only display those customers that have a fax
number.
12. Create a statement to insert a new record into the items table with
the following values:
item_id: 11
title: Ode To My ERD
Artist_id: 15
unit_price: 12.95
Show your INSERT statement along with the results of the following
SELECT query to verify that the insert worked correctly.
select * from items where item_id> 10;
13. Create a statement to update the record inserted in the previous
step to change the unit price of this item to 7.95.
item_id: 11
title: Ode To My ERD
artist: 15
unit_price: 7.95
Show your UPDATE statement along with the results of the following
SELECT query to verify that the insert worked correctly.
select * from items where item_id> 10;
14. Create a statement to delete the entire record that was inserted and
then updated in the previous steps.
Show your DELETE statement along with the results of the following
SELECT query to verify that the insert worked correctly.
select * from items where item_id> 10;
15. Using the SUBSTRING and CONCAT functions, write a query to
display each customer name as a single field in the format “Jones,
Tom” with a heading of Customer along with the customer_phone
field in a nicely formatted calculated column named Phone. For
example, a record containing the customer_phone value 6145535443
would be output with parentheses, spaces, and hyphens, like this: (614)
555-5443.Sort by last name.
This is the end of Lab 4.
==============================================
CIS 336 iLab 5 Joining Tables
FOR MORE CLASSES VISIT
www.cis336study.com
CIS336: Lab5: Joining Tables
LAB OVERVIEW
Scenario and Summary
Lab 5 will introduce the concept of multi-table JOINS in order to work
with data in two or more related tables simultaneously. This lab may
be completed using either DeVry’sOmnymbus EDUPE-APP lab
environment, or a local copy of the MySQL database running on your
own computer using the OM database tables. The lab will utilize a set
of tables that are represented by the ERD (OM_ERD.docx) and are
created and populated by the script file (create_OM_db.sql). Follow
the instructions in the file CreateOMTables.docx to create your
database, tables, and data.
A few IMPORTANT things to note if using EDUPE MySQL:
**There can be NO SPACES in alias names given to a column. For
example:
Select unit_price as “Retail Price “ from items; –this does NOT work
in EDUPE MySQL.
Any of the following WILL WORK:
Select unit_price as “RetailPrice” from items;
Select unit_price as “Retail_Price” from items;
Select unit_price as Retail_Price from items;
Select unit_price as RetailPrice from items;
**Any calculated fields MUST be given an alias (and note above NO
SPACES in alias). For example:
select unit_price * 2 from items; –this does NOT work in EDUPE
MySQL
This will work:
select unit_price * 2 as NewPrice from items;
Deliverables
• Lab Report (Answer Sheet) containing both the student-created SQL
command(s) for each exercise, and the output showing the results
obtained. Be sure your name is on the file.
LAB STEPS: Complete each of the exercises below:
1. Use the JOIN ON syntax to write a query to display the order id,
order date, customer name formatted as a single field (i.e. “Tom
Jones”) with a heading of Customer, and customer_city for customers
residing in the state of OHIO. Sort the output to display the newest
orders first.
2. Use the JOIN USING syntax to display the order_id, order date, and
shipdate for orders to Karina Lacy that have shipped.
3. Use the implicit join syntax (the WHERE clause) to display the last
name, city, order date and ship date for all orders shipped in 2012.
4. Use any join syntax EXCEPT NATURAL JOIN to list the
customer_first_name and customer_last_name concatenated with an
intervening space as Customer, customer city and state formatted as a
single column in the format of “city, ST” with a heading of Location,
order_id and order date for orders that have not shipped.
5. List the customer name, order date, zipcode for any customer(s)
placing an order for the item titled ‘Etcetera”.
6. Write a query to list the title and artist of ONLY the items that have
been ordered. Only list each title once.
7. Write a query to list the title and price of all items that have been
ordered by customer Millerton.
8. Write a query to list the last name and order id of customers that
ordered any items by the artist Burt Ruggles?
9. Write a query to display a list of titles along with the artist name.,
sorted by artist name.
10. Write a query to display an invoice for order 693 including the title,
quanty, price, and a calculated column to display the line item subtotal
(quantity times price) with a heading of Subtotal.
11. Display the order id, last name, title , and quantity for any items
where customers have ordered 2 or more of a particular item in an
order.
12. The employees table contains a list of employees of a company. An
employee may be managed by another employee. To denote an
employee’s manager, the employee_id of the manager is entered into
the manager_id field of the employee reporting to that manager. In
order to produce a list of which managers supervise which employees,
the table may be joined to itself using these two attributes
(employee_id, manager_id). This is known as a SELF-JOIN. Use a
SELF-JOIN on the employees table to produce a result containing two
columns: the concatenated last_name and first_name of the manager,
and the concatenated last_name and first_name of the employee.
Label the first-column supervisor, and the second-column employee.
Order the output by the supervisor’s last_name and first_name.
13. Write a query to display the order id, order date, ship date, and
customer last name for all SHIPPED orders placed on the internet (no
employee id). Show the most recently shipped orders first.
14. Write a query that displays the order id, order date, and employee
name as a single field labeled Employee for each order that an
employee assisted with.
15. Write a query that displays the order id, order date, customer name
as a single field labeled Customer for all orders for the sales rep
Thomas Hardy, sorted by customer last name.
This is the end of Lab 5.
==============================================
CIS 336 iLab7 Working with Views
FOR MORE CLASSES VISIT
www.cis336study.com
CIS-336: Lab7: Working with Views
LAB OVERVIEW
Lab 7 will introduce the concept of database views. This lab
may be completed using either DeVry’sOmnymbus EDUPE-
APP lab environment, or a local copy of the MySQL
database running on your own computer using the OM
database tables. The lab will utilize a set of tables that are
represented by the ERD (OM_ERD.docx) and are created
and populated by the script file (create_OM_db.sql). Follow
the instructions in the file CreateOMTables.docx to create
your database, tables, and data.
A few IMPORTANT things to note if using EDUPE
MySQL:
**There can be NO SPACES in alias names given to a
column. For example:
Select unit_price as “Retail Price “ from items; –this does
NOT work in EDUPE MySQL.
Any of the following WILL WORK:
Select unit_price as “RetailPrice” from items;
Select unit_price as “Retail_Price” from items;
Select unit_price as Retail_Price from items;
Select unit_price as RetailPrice from items;
**Any calculated fields MUST be given an alias (and note
above NO SPACES in alias). For example:
select unit_price * 2 from items; –this does NOT work in
EDUPE MySQL
This will work:
select unit_price * 2 as NewPrice from items;
Deliverables
• Lab Report (Answer Sheet) containing both the student-
created SQL command(s) for each exercise, and the output
showing the results obtained. Be sure your name is on the
file.
LAB STEPS: Complete each of the exercises below.
1. Use an ALTER TABLE statement to update the
customers table so that the Primary Key field is an auto-
increment field, then create TWO insert statements to test
proper operation, using your own first and last name for one
(and a name of your choice for the second one), and any data
you care to imagine for the remaining fields.
IMPORTANT NOTE: When using a LOCAL copy of
MySQL, if you attempt to simply issue the ALTER TABLE
command you have composed by itself, you should receive
an error similar to the following (try it for yourself!).
ERROR 1833: Cannot change column ‘customer_id’: used
in a foreign key constraint ‘orders_fk_customers’ of table
‘om.orders’
(Note – EDUPE will not give this error message, however
you should still follow the CORRECT procedure as
discussed here to complete this problem).
The reason for this is that you are attempting to alter data in
one column that has a defined PK:FK relationship to a field
in another table. Referential Integrity rules prevent this. So,
how do you resolve such a problem?
One approach to solving this dilemma is to turn off the
foreign key checks that implement referential integrity rules.
However, the danger here is that other users and processes
operating on the database while these constraints are
suspended could create or modify data in a way that
compromises integrity. We can solve this second problem by
preventing other users and processes from altering the data
in the table in which we are working until we have turned
the foreign key checks back on. We therefore need to
construct a script that does the following.
a) Locks the customer table – lock table customers write;
b) Turns off FK checks – set foreign_key_checks = 0;
c) Alters the table to add the auto_increment feature to the
PK field
d) Turns FK checks back on – set foreign_key_checks = 1;
e) Unlocks the customer table – unlock tables;
It is VERY important to consider that altering tables can
require a bit of time for very large tables, and that while the
table is locked, other users and processes cannot operate.
Consequently, this kind of modification should not be done
during peak operating hours in a production operation (as a
student in a lab exercise, working on your own database, you
may do this at any time) but ideally in hours during which
the business does not normally operate. In cases where
round-the-clock, high availability of a database is required,
other approaches may be required. Addressing this problem
in a high-availability, high-demand environment is an
advanced topic, study of which is outside the scope of this
course. Use the outline below to construct your script. Show
all commands in your answer sheet along with the output of
the commands.
lock table customers write;
set foreign_key_checks = 0;
– Replace this comment with your ALTER TABLE
command to add the auto_increment feature to the PK field
set foreign_key_checks = 1;
unlock tables;
–statements to insert two rows into the table
–verify auto_increment with a select statement
2. The Vice President of Marketing for your firm wants the
firm’s sales representatives to be able to directly view and
edit customer details, but only for the state to which a
particular sales representative is assigned. You have
suggested that this need can be addressed with a view. For
example, a view could be created for one particular state,
and user account permissions for accessing that view
granted only to sales representatives from that state. The VP
has asked you to quickly create a simple proof-of-concept
demonstrating how this might work. Complete the following
steps:
a. Construct a view on the customers table called
CA_CUSTOMERS that consists of all data about customers
that live in California.
b. Display the data using this view to verify that only
customers that reside in California are visible.
c. Prove that It is possible to add or update records through
this view by updating the record for Karina Lacy to change
the spelling of Karina’s last name to Lacie.
d. Display the data using the customer table to verify that
the change has been made.
Show all commands in your answer sheet along with the
output of the commands.
3. The Senior Customer Service Manager has requested the
ability to create a report at any time that will show shipped
orders that took some specified number of days to fulfill.
a. Create a view named SHIPPING_TIME that lists only
customer_first_name, customer_last_name, order_date,
shipped_date, and the calculated field days_to_fulfill (use
the DATEDIFF function) showing the number of days
between when the customer placed the order and when it
was shipped. Show the data from this view.
Now let’s do some queries by adding sorting and filters
USING THIS VIEW, WITHOUT CHANGING IT.
b. Use the view to display the data sorted by highest to
lowest days to ship
c. Use the view to display only the orders that took less than
10 days to ship.
d. Use the view to display only the orders that took more
than 30 days to ship.
4. Queries that require joins and aggregate functions can be
easier to construct when using a view as a “temporary”
table. Consider a report to show total sales by artist.
a. First create a view called SalesData that displays the
order_id, item_id, the calculated field ItemTotal (which is
quantity times price), the title and artist_id.
b. Display the data in the SalesData view sorted by artist_id.
Does this help you to “visualize” how to group the data to
create the totals?
c. Create a query USING THIS VIEW and the appropriate
aggregate function to display artist_id and the total sales for
each artist.
d. Now join to the artist table in order to display the
artist_name along with the total sales.
5. Now use this same method to display the total sales per
customer.
a. Create a view called SalesData with the appropriate data.
At a minimum you will need customer_id and the calculated
item total. DO NOT use the customer table in this view, it
will be joined later.
b. Display the data in your view sorted by customer_id. Does
this help you to “visualize” how to group the data to create
the totals?
c. Create a query USING THIS VIEW and the appropriate
aggregate function to display customer_id and the total sales
for each customer.
d. Now join to the customer table in order to display the
customer_name as a single field named Customer along with
the total sales. Sort the report by Total sales in descending
order.
This is the end of Lab 7.
==============================================
CIS 336 Quiz 1 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
(TCO 3) Normalization works through a series of stages called normal
forms. Typically _________ stages must be completed before a table can
be considered normalized.
(TCO 3) The conflicts between design efficiency, information
requirements, and processing speed are often resolved through
(TCO 3) The PK must uniquely identify each entity instance. A primary
key must be able to guarantee unique values. It cannot contain nulls.
This rationale belongs to
(TCO 9) The SQL command that lets you insert data into a table, one
row at a time, is _____________.
(TCO 4) Which command is used to restore the table's contents to their
default values?
(TCO 4) Which of the following SQL commands would alter the table
DEVRY and add a foreign key that references the CITY table?
(TCO 4) The SQL command that lets you save your work to disk, is
___________
(TCO 9) If the INSERT INTO command is used to insert data values
that violate an existing constraint in a table, which of the following will
happen?
(TCO 3) Explain under what circumstances a partial dependency can
exist in a database.
==============================================
CIS 336 Quiz 2 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
(TCO 2) Explain what a composite attribute is
(TCO 1) Data constitutes the building blocks of
(TCO 1) Successful database design is first and foremost based on
_____________ requirements.
(TCO 1) The lowest level in a database hierarchy is the ____________
or value as it is often referred
(TCO 2) The term _____________ design is used to refer to the task of
creating the conceptual data model represented by an Entity Relationship
Diagram (ERD).
(TCO 2) Within a table, the primary key must be unique so that it will
identify each row. When this is the case, the table is said to exhibit
___________.
(TCO 2) A field that consists of data values that can be used for
arithmetic procedures is a _________ type field.
(TCO 2) A relationship is an association between ___________
(TCO 5) The _____________ model represents a global view of the
data.
(TCO 5) In Crow's Foot notation, a forked end means
==============================================
CIS 336 Quiz 3 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
(TCO 7) Which of the following types of columns will automatically
right-align the data when it is displayed?
(TCO 7) Which of the following SQL statements will display the profit
generated by each book currently stored in the BOOKS table? (You do
not need to see the table structure for this question)
(TCO 7) Which of the following will display the new retail price of each
book as 20 percent more than it originally cost?
(TCO 7) Which of the following operators would be most appropriate to
determine whether or not the retail price of a book is at least $24.00?
(TCO 7) The ______________________ comparison operator is used to
indicate that a data value must fall within a range of values to be
included in the query results.
(TCO 7) Based upon the contents of the BOOK_ORDER table shown
below, which of the following queries will display all orders that were
not shipped for at least three days after the order was received?
(TCO 7) ANSI-standard SQL allows the use of a special operator in
conjunction with WHERE clause. A special operator used to check
whether an attribute matches one from a subquery is_______.
(TCO 7) A ____ occurs when a relationship is improperly or
incompletely identified and, therefore, is represented in a way that is not
consistent with the real world.
(TCO 7) The ______________________ comparison operator is used to
search for values which are not NULL.
TCO 7) You want to write a query that will return the customer number,
first and last name from the book_order table (shown below) for all
customers who have a P.O. Box and who live in either Trenton or
Chicago. Write the query that will accomplish this task.
==============================================
CIS 336 Quiz 4 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
(TCO 8) If a Cartesian join is used to link table A which contains five
rows to table B which contains eight rows, there will be _______ rows
in the results.
(TCO 8) Which of the following statements will produce the value 21.1?
(TCO 8) Which of the following format elements will display
insignificant leading zeros?
(TCO 8) Oracle’s pseudo table used only for cases where a table is not
really needed is _________?
(TCO 7) Using the BOOK_CUSTOMER and BOOK_ORDER tables
shown below for reference which SQL statement will return the same
results as the following SQL statement?
(TCO 7) A table alias or qualifier cannot be assigned in the FROM
clause of which type of join?
(TCO 7) The _______ query joins a table to itself using aliases to
distinctly identify each instance of the table.
(TCO 7) Explain the difference between an inner join and an outer join.
==============================================
CIS 336 Quiz 5 (Devry)
FOR MORE CLASSES VISIT
www.cis336study.com
(TCO 6) Which of the following keywords is used to remove a row in a
table?
(TCO 6) When using the ALTER TABLE...DROP COLUMN
command, which of the following is NOT correct?
(TCO 6) Which of the following commands will add a new column
named FIRSTORDERDATE to the CUSTOMERS table to store the date
that the customer first placed an order with the company?
(TCO 8) Which of the following is NOT a valid statement?
(TCO 8) Based on the contents of the BOOKS table shown below,
which of the following SQL statements will return the total profit
generated by books in the COOKING category?
(TCO 8) Which comparison operator evaluates a subquery and if it
returns false, will not execute the calling query?
(TCO 8) The following SQL statement contains which type of
subquery?
(TCO 9) If the _________ clause of the UPDATE command is omitted,
then all the rows in the specified table will be changed.
(TCO 9) Which of the following is not a valid SQL command?
(TCO 9) Based on the contents of the PROMOTION table, which of the
following commands will delete only the row for the Free Bookmark
from the table?
(TCO 8) In using group functions we cannot place a group function in a
WHERE clause. Explain how the WHERE clause and HAVING clause
similar and why you can use the HAVING with a group function but not
a WHERE clause.
==============================================
CIS 336 Week 2 Quiz (New)
FOR MORE CLASSES VISIT
www.cis336study.com
Question 1. (TCO 1) Raw facts, such as a telephone number,
a birth date, and a customer name, are also referred to as _____
Question 2. (TCO 1) The DBMS allows you to extrapolate
information from your data by using a _____
Question 3. (TCO 1) A database row (record) consists of
_____
Question 4. (TCO 2) In Oracle, a _____ is automatically
constrained to be unique and not null.
Question 5. (TCO 2) A verb associating two nouns in a
business rule usually translates to a(n) ___ in the data model.
Question 6. (TCO 2) In a relationship, when a primary key
from one table is also defined in a second table, the field is referred to
as a _____ in the second table.
Question 7. (TCO 2) In a relational database, each table
must have _____
Question 8. (TCO 5) The product of a logical model is the
entity relationship diagram, also known as a _____
==============================================
CIS 336 Week 3 Quiz (New)
FOR MORE CLASSES VISIT
www.cis336study.com
Question 1. (TCO 3) When designing a database, you should
_____
Question 2. (TCO 3) A table that is in 1NF and includes no
partial dependencies only is said to be in _____
Question 3. (TCO 3) (TCO 3) A table is not in 1NF if
_______________.
Question 4. (TCO 9) All of following are examples of DML
commands except _____
Question 5. (TCO 4) Which of the following is not
considered a database object?
Question 6. (TCO 4) In Oracle, the DEFAULT constraint is
used to _____
Question 7. (TCO 4) The SQL command that lets you save
your work to disk, is _____
Question 8. (TCO 9) Which of the following SQL statements
would insert a line of data into the DEVRY table and supply a NULL
value for the Student_city column?
==============================================
CIS 336 Week 4 Quiz (New)
FOR MORE CLASSES VISIT
www.cis336study.com
Question 1. (TCO 7) Which of the following types of
columns will automatically right-align the data when it is displayed?
Question 2. (TCO 7) Which of the following symbols can be
used to denote that any and all characters following the sign are
eligible when used with LIKE?
Question 3. (TCO 7) Based upon the contents of the BOOKS
table shown below, which of the following is a valid SQL statement?
Question 4. (TCO 7) Which of the following operators
would be most appropriate to determine whether or not the retail price
of a book is at least $24.00?
Question 5. (TCO 7) Based upon the contents of the
BOOK_ORDER table shown below, which of the following SQL
statements will list all orders placed by customer# 1020 that have not
yet been shipped?
Question 6. (TCO 7) Based upon the contents of the
BOOK_ORDER table shown below, which of the following queries
will display all orders shipped between April 4, 2003 and April 5,
2003?
Question 7. ((TCO 7) The ____ comparison operator is used
to search for values that are not NULL.
Question 8. (TCO 7) You want to write a SQL query that
lists all employees in the EMP table whose last names in the
EMP_LNAME column start with Smith, including values such as
Smithfield. What is the correct statement?
==============================================
CIS 336 Week 5 Quiz (New)
FOR MORE CLASSES VISIT
www.cis336study.com
Question 1. (TCO 8) The ____ set operator in SQL combines
rows from two queries and returns only the values that are common
between the two sets.
Question 2. (TCO 8) Which SQL function converts a value
to a particular string format?
Question 3. (TCO 8) Based upon the contents of the
BOOK_ORDER table shown below, which of the following SQL
statements will display only those orders shipped to the zip code zone
that begins with 323?
Question 4. (TCO 8) Oracle’s pseudo table used only for
cases where a table is not really needed is _____
Question 5. (TCO 7) Using the BOOK_CUSTOMER and
BOOK_ORDER tables shown below for reference, which SQL
statement will return the first and last name of each customer who's
order has not yet shipped?
Question 6. (TCO 7) A table alias or qualifier cannot be
assigned in the FROM clause of which type of join?
Question 7. (TCO 7) A(n) ____ join returns not only the
rows matching the join condition (that is, rows with matching values
in the common columns) but also the rows with unmatched values.
Question 8. (TCO 7) Which statement will display the date
in this format:
==============================================
CIS 336 Week 6 Quiz (New)
FOR MORE CLASSES VISIT
www.cis336study.com
Question 1. (TCO 6) Which of the following
keywords can be used to change the size, datatype, or default
value of an existing column?
Question 2. (TCO 9) If the _____ clause of the
UPDATE command is omitted, then all the rows in the specified
table will be changed.
Question 3. (TCO 6) Which of the following
commands will increase the size of the CITY column in the
CUSTOMERS table from 12 to 20 and increase size of the
LASTNAME column from 10 to 14?
Question 4. (TCO 8) Based upon the contents of the
BOOKS table shown below, which of the following SQL
statements will return the number of different categories
contained in the table?
Question 5. (TCO 9) Which of the following is not a
valid SQL command?
Question 6. (TCO 8) Based on the contents of the
BOOKS table shown below, which of the following SQL
statements will return the total profit generated by books in the
COOKING category?
Question 7. (TCO 8) Before the COMMIT command
is used, you can retrieve deleted records by using the _____
command.
Question 8. (TCO 8)Based on the contents of the
BOOK_ORDER table shown below, which of the following
SQL statements will list the order number and customer number
for the most recent orders in the system?
Question 7. (TCO 8) Before the COMMIT command
is used, you can retrieve deleted records by using the _____
command.
Question 8. (TCO 8)Based on the contents of the
BOOK_ORDER table shown below, which of the following
SQL statements will list the order number and customer number
for the most recent orders in the system?
==============================================
CIS336 iLab 6 Group Functions and Subqueries
FOR MORE CLASSES VISIT
www.cis336study.com
CIS336: Lab 6: Group Functions and Subqueries
LAB OVERVIEW
Scenario and Summary
Lab 6 will introduce the concept of group functions and subqueries to
meet more complex report requirements. This lab may be completed
using either DeVry’sOmnymbus EDUPE-APP lab environment, or a
local copy of the MySQL database running on your own computer using
the OM database tables. The lab will utilize a set of tables that are
represented by the ERD (OM_ERD.docx) and are created and populated
by the script file (create_OM_db.sql). Follow the instructions in the file
CreateOMTables.docx to create your database, tables, and data.
A few IMPORTANT things to note if using EDUPE MySQL:
**There can be NO SPACES in alias names given to a column. For
example:
Select unit_price as “Retail Price “ from items; –this does NOT work in
EDUPE MySQL.
Any of the following WILL WORK:
Select unit_price as “RetailPrice” from items;
Select unit_price as “Retail_Price” from items;
Select unit_price as Retail_Price from items;
Select unit_price as RetailPrice from items;
**Any calculated fields MUST be given an alias (and note above NO
SPACES in alias). For example:
select unit_price * 2 from items; –this does NOT work in EDUPE
MySQL
This will work:
select unit_price * 2 as NewPrice from items;
Deliverables
• Lab Report (Answer Sheet) containing both the student-created SQL
command(s) for each exercise, and the output showing the results
obtained. Be sure your name is on the file.
LAB STEPS: Complete each of the exercises below.
1. Write a query to determine the total number of items on each order.
Display the order_id and the total with a heading of TotalItems (note no
spaces). Filter to only display information for order_id of 600 or higher.
2. Re-do query 1 but filter to only show those orders with more than 2
items ordered. Sort by the number of items ordered, lowest to highest.
3. The order_details table has a quantity for each item ordered. Show
the total amount charged for each item on the order (quantity times
price). Display order_id, the item id, the unit price, the quantity times
price of the item labeled as “Itemtotal” (note NO spaces). Sort by order
id and filter to only display those order ids between 400 and 700.
4. Write a query to display the total amount for each order: show the
order id and total. Sort by descending order on the total and only
display orders with a total of $40 or more.
5. Re-do query 4 but show the customer name for each order (formatted
as a single field with heading of Customer) along with the city, order id
and total. Filter to only display customers that live in California. Sort by
city.
6. Display the total amount of sales per item. Show title, total quantity
sold with a heading of Quantity, total sales with a heading of
“TotalSales” (not NO space). Sort by highest to lowest total.
7. Display the total sales for each customer: show customer name (as
single field) with a heading of Cutomer and total. Sort lowest to highest
total. Filter to only display customers with $50 or more in total orders.
8. Use subqueries to determine which (artist) had the item ordered in
highest quantity on an order? First determine the highest quantity on
any order, then determine the item number associated with it, then
display the artist.
9. Display the total sales by artist: show artist name, total. Sort highest
to lowest.
10. USE A SUBQUERY to Increase price of all items by ‘No Rest for the
Weary’ by 10%. If working in MySQl you will need to disable safe mode.
Show prices before and after. Rollback after.
11. USE A SUBQUERY to display names of customers that have
unshipped orders.
12. Display the total amount of sales made to customers in NY
13. USE A SUBQUERY to list the items (title and artist) of items that
have never been ordered
14. Show the order history for Samuel Jacobsen. Display the order id,
order date, ship date, and total.
15. Show the total amount of sales per sales rep. Display the employee
name as a single field along with the total sales, sorted by highest to
lowest sales.
This is the end of Lab 6.
===========================================
===

More Related Content

What's hot

CIS 336 Imagine Your Future/newtonhelp.com   
CIS 336 Imagine Your Future/newtonhelp.com   CIS 336 Imagine Your Future/newtonhelp.com   
CIS 336 Imagine Your Future/newtonhelp.com   bellflower45
 
Cis 336 Enhance teaching / snaptutorial.com
Cis 336    Enhance teaching / snaptutorial.comCis 336    Enhance teaching / snaptutorial.com
Cis 336 Enhance teaching / snaptutorial.comDavis104
 
CIS 336 Start With a Dream /newtonhelp.com
CIS 336 Start With a Dream /newtonhelp.comCIS 336 Start With a Dream /newtonhelp.com
CIS 336 Start With a Dream /newtonhelp.comqwsdd2
 
CIS 336 Focus Dreams/newtonhelp.com
CIS 336 Focus Dreams/newtonhelp.comCIS 336 Focus Dreams/newtonhelp.com
CIS 336 Focus Dreams/newtonhelp.combellflower85
 
CIS 336 STUDY Education Counseling--cis336study.com
CIS 336 STUDY Education Counseling--cis336study.comCIS 336 STUDY Education Counseling--cis336study.com
CIS 336 STUDY Education Counseling--cis336study.comshanaabe13
 
Cis 336 Extraordinary Success/newtonhelp.com
Cis 336 Extraordinary Success/newtonhelp.com  Cis 336 Extraordinary Success/newtonhelp.com
Cis 336 Extraordinary Success/newtonhelp.com amaranthbeg146
 
CIS 336 STUDY Redefined Education--cis336study.com
CIS 336 STUDY Redefined Education--cis336study.comCIS 336 STUDY Redefined Education--cis336study.com
CIS 336 STUDY Redefined Education--cis336study.comclaric192
 
CIS 336 Become Exceptional--cis336.com
CIS 336 Become Exceptional--cis336.comCIS 336 Become Exceptional--cis336.com
CIS 336 Become Exceptional--cis336.comclaric131
 
CIS 336 Education Begins--cis336.com
CIS 336 Education Begins--cis336.comCIS 336 Education Begins--cis336.com
CIS 336 Education Begins--cis336.comclaric231
 
CIS 336 STUDY Become Exceptional--cis336study.com
CIS 336 STUDY Become Exceptional--cis336study.comCIS 336 STUDY Become Exceptional--cis336study.com
CIS 336 STUDY Become Exceptional--cis336study.comclaric102
 
CIS 336 STUDY Achievement Education--cis336study.com
CIS 336 STUDY Achievement Education--cis336study.comCIS 336 STUDY Achievement Education--cis336study.com
CIS 336 STUDY Achievement Education--cis336study.comclaric153
 
CIS 336 Final Exam (Feb 2016)p
CIS 336 Final Exam (Feb 2016)pCIS 336 Final Exam (Feb 2016)p
CIS 336 Final Exam (Feb 2016)pcritterc06
 
CIS 336 Final Exam 2 (Devry)p
CIS 336 Final Exam 2 (Devry)pCIS 336 Final Exam 2 (Devry)p
CIS 336 Final Exam 2 (Devry)pcritterc07
 
Cis 336 final exam 2
Cis 336 final exam 2Cis 336 final exam 2
Cis 336 final exam 2lifesgood12
 
CIS 336 Final Exam 2 (Devry)s
CIS 336 Final Exam 2 (Devry)sCIS 336 Final Exam 2 (Devry)s
CIS 336 Final Exam 2 (Devry)scritterc07
 
CIS 336 Final Exam 2 (Devry)
CIS 336 Final Exam 2 (Devry) CIS 336 Final Exam 2 (Devry)
CIS 336 Final Exam 2 (Devry) critter03
 
Cis 336 final exam 1
Cis 336 final exam 1Cis 336 final exam 1
Cis 336 final exam 1prasaaanna2
 
CIS 336 Inspiring Innovation/tutorialrank.com
CIS 336 Inspiring Innovation/tutorialrank.comCIS 336 Inspiring Innovation/tutorialrank.com
CIS 336 Inspiring Innovation/tutorialrank.comjonhson111
 
Dbconap quiz01
Dbconap quiz01Dbconap quiz01
Dbconap quiz01venus19
 

What's hot (20)

CIS 336 Imagine Your Future/newtonhelp.com   
CIS 336 Imagine Your Future/newtonhelp.com   CIS 336 Imagine Your Future/newtonhelp.com   
CIS 336 Imagine Your Future/newtonhelp.com   
 
Cis 336 Enhance teaching / snaptutorial.com
Cis 336    Enhance teaching / snaptutorial.comCis 336    Enhance teaching / snaptutorial.com
Cis 336 Enhance teaching / snaptutorial.com
 
CIS 336 Start With a Dream /newtonhelp.com
CIS 336 Start With a Dream /newtonhelp.comCIS 336 Start With a Dream /newtonhelp.com
CIS 336 Start With a Dream /newtonhelp.com
 
CIS 336 Focus Dreams/newtonhelp.com
CIS 336 Focus Dreams/newtonhelp.comCIS 336 Focus Dreams/newtonhelp.com
CIS 336 Focus Dreams/newtonhelp.com
 
CIS 336 STUDY Education Counseling--cis336study.com
CIS 336 STUDY Education Counseling--cis336study.comCIS 336 STUDY Education Counseling--cis336study.com
CIS 336 STUDY Education Counseling--cis336study.com
 
Cis 336 Extraordinary Success/newtonhelp.com
Cis 336 Extraordinary Success/newtonhelp.com  Cis 336 Extraordinary Success/newtonhelp.com
Cis 336 Extraordinary Success/newtonhelp.com
 
CIS 336 STUDY Redefined Education--cis336study.com
CIS 336 STUDY Redefined Education--cis336study.comCIS 336 STUDY Redefined Education--cis336study.com
CIS 336 STUDY Redefined Education--cis336study.com
 
CIS 336 Become Exceptional--cis336.com
CIS 336 Become Exceptional--cis336.comCIS 336 Become Exceptional--cis336.com
CIS 336 Become Exceptional--cis336.com
 
CIS 336 Education Begins--cis336.com
CIS 336 Education Begins--cis336.comCIS 336 Education Begins--cis336.com
CIS 336 Education Begins--cis336.com
 
CIS 336 STUDY Become Exceptional--cis336study.com
CIS 336 STUDY Become Exceptional--cis336study.comCIS 336 STUDY Become Exceptional--cis336study.com
CIS 336 STUDY Become Exceptional--cis336study.com
 
CIS 336 STUDY Achievement Education--cis336study.com
CIS 336 STUDY Achievement Education--cis336study.comCIS 336 STUDY Achievement Education--cis336study.com
CIS 336 STUDY Achievement Education--cis336study.com
 
CIS 336 Final Exam (Feb 2016)p
CIS 336 Final Exam (Feb 2016)pCIS 336 Final Exam (Feb 2016)p
CIS 336 Final Exam (Feb 2016)p
 
CIS 336 Final Exam 2 (Devry)p
CIS 336 Final Exam 2 (Devry)pCIS 336 Final Exam 2 (Devry)p
CIS 336 Final Exam 2 (Devry)p
 
Cis 336 final exam 2
Cis 336 final exam 2Cis 336 final exam 2
Cis 336 final exam 2
 
CIS 336 Final Exam 2 (Devry)s
CIS 336 Final Exam 2 (Devry)sCIS 336 Final Exam 2 (Devry)s
CIS 336 Final Exam 2 (Devry)s
 
CIS 336 Final Exam 2 (Devry)
CIS 336 Final Exam 2 (Devry) CIS 336 Final Exam 2 (Devry)
CIS 336 Final Exam 2 (Devry)
 
Cis 336 final exam 1
Cis 336 final exam 1Cis 336 final exam 1
Cis 336 final exam 1
 
CIS 336 Inspiring Innovation/tutorialrank.com
CIS 336 Inspiring Innovation/tutorialrank.comCIS 336 Inspiring Innovation/tutorialrank.com
CIS 336 Inspiring Innovation/tutorialrank.com
 
SQL
SQLSQL
SQL
 
Dbconap quiz01
Dbconap quiz01Dbconap quiz01
Dbconap quiz01
 

Similar to CIS 336 Final Exam Study Guide (Feb 2016

Cis 336 final exam 2
Cis 336 final exam 2Cis 336 final exam 2
Cis 336 final exam 2prasaaanna2
 
CIS 336 Wonderful Education--cis336.com
CIS 336 Wonderful Education--cis336.comCIS 336 Wonderful Education--cis336.com
CIS 336 Wonderful Education--cis336.comJaseetha16
 
CIS 336 Education guide/Tutorialrank.com
CIS 336 Education guide/Tutorialrank.comCIS 336 Education guide/Tutorialrank.com
CIS 336 Education guide/Tutorialrank.comtyjhgfsdfgh
 
Bis 345-final-exam-guide-set-2-new
Bis 345-final-exam-guide-set-2-newBis 345-final-exam-guide-set-2-new
Bis 345-final-exam-guide-set-2-newassignmentcloud85
 
Cis 355 Enthusiastic Study - snaptutorial.com
Cis 355 Enthusiastic Study - snaptutorial.comCis 355 Enthusiastic Study - snaptutorial.com
Cis 355 Enthusiastic Study - snaptutorial.comGeorgeDixon100
 
CIS 355 Success Begins / snaptutorial.com
CIS 355 Success Begins / snaptutorial.comCIS 355 Success Begins / snaptutorial.com
CIS 355 Success Begins / snaptutorial.comRobinson070
 
Application sql issues_and_tuning
Application sql issues_and_tuningApplication sql issues_and_tuning
Application sql issues_and_tuningAnil Pandey
 

Similar to CIS 336 Final Exam Study Guide (Feb 2016 (7)

Cis 336 final exam 2
Cis 336 final exam 2Cis 336 final exam 2
Cis 336 final exam 2
 
CIS 336 Wonderful Education--cis336.com
CIS 336 Wonderful Education--cis336.comCIS 336 Wonderful Education--cis336.com
CIS 336 Wonderful Education--cis336.com
 
CIS 336 Education guide/Tutorialrank.com
CIS 336 Education guide/Tutorialrank.comCIS 336 Education guide/Tutorialrank.com
CIS 336 Education guide/Tutorialrank.com
 
Bis 345-final-exam-guide-set-2-new
Bis 345-final-exam-guide-set-2-newBis 345-final-exam-guide-set-2-new
Bis 345-final-exam-guide-set-2-new
 
Cis 355 Enthusiastic Study - snaptutorial.com
Cis 355 Enthusiastic Study - snaptutorial.comCis 355 Enthusiastic Study - snaptutorial.com
Cis 355 Enthusiastic Study - snaptutorial.com
 
CIS 355 Success Begins / snaptutorial.com
CIS 355 Success Begins / snaptutorial.comCIS 355 Success Begins / snaptutorial.com
CIS 355 Success Begins / snaptutorial.com
 
Application sql issues_and_tuning
Application sql issues_and_tuningApplication sql issues_and_tuning
Application sql issues_and_tuning
 

Recently uploaded

भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,Virag Sontakke
 
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxAnaBeatriceAblay2
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsanshu789521
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application ) Sakshi Ghasle
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxUnboundStockton
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Educationpboyjonauth
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfSumit Tiwari
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfMahmoud M. Sallam
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfadityarao40181
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxRaymartEstabillo3
 

Recently uploaded (20)

भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,भारत-रोम व्यापार.pptx, Indo-Roman Trade,
भारत-रोम व्यापार.pptx, Indo-Roman Trade,
 
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptxENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
ENGLISH5 QUARTER4 MODULE1 WEEK1-3 How Visual and Multimedia Elements.pptx
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Presiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha electionsPresiding Officer Training module 2024 lok sabha elections
Presiding Officer Training module 2024 lok sabha elections
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 
Hybridoma Technology ( Production , Purification , and Application )
Hybridoma Technology  ( Production , Purification , and Application  ) Hybridoma Technology  ( Production , Purification , and Application  )
Hybridoma Technology ( Production , Purification , and Application )
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
Blooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docxBlooming Together_ Growing a Community Garden Worksheet.docx
Blooming Together_ Growing a Community Garden Worksheet.docx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Introduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher EducationIntroduction to ArtificiaI Intelligence in Higher Education
Introduction to ArtificiaI Intelligence in Higher Education
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdfEnzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
Enzyme, Pharmaceutical Aids, Miscellaneous Last Part of Chapter no 5th.pdf
 
Pharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdfPharmacognosy Flower 3. Compositae 2023.pdf
Pharmacognosy Flower 3. Compositae 2023.pdf
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Biting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdfBiting mechanism of poisonous snakes.pdf
Biting mechanism of poisonous snakes.pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptxEPANDING THE CONTENT OF AN OUTLINE using notes.pptx
EPANDING THE CONTENT OF AN OUTLINE using notes.pptx
 

CIS 336 Final Exam Study Guide (Feb 2016

  • 1. CIS 336 Final Exam (Feb 2016) FOR MORE CLASSES VISIT www.cis336study.com Question 1. 1. (TCO 1) A DBMS performs several important functions that guarantee the integrity and consistency of the data in the database. Which of the following is NOT one of those functions? Question 2. 2. (TCO 1) A relational DBMS provides protection of the _____ through security, control, and recovery facilities. Question 3. 3. (TCO 2) A relationship is an association between _____ Question 4. 4. (TCO 2) A _____ key is a key that is composed of more than one attribute. Question 5. 5. (TCO 3) The PK must uniquely identify each entity instance. A primary key must be able to guarantee unique values. It cannot contain nulls. This rationale belongs to _____ Question 6. 6. (TCO 3) The extended entity relationship model (EERM) is sometimes referred to as the _____ Question 7. 7. (TCO 3) A table that has all key attributes defined, has no repeating groups, and all its attributes are dependent on the primary key, is said to be in _____
  • 2. Question 8. 8. (TCO 4) When a constraint is created at the _____ level with the CREATE TABLE command, the constraint definition is simply included as part of the column definition. (Points : 4) Question 1. 1. (TCO 4) When creating a table, which of the following statements is NOT correct? Question 2. 2. (TCO 4) Which of the following SQL statements would you use to create a table named DEVRY? Question 3. 3. (TCO 5) The Crow's Foot model is more _____-oriented than the Chen model. Question 4. 4. (TCO 5) Knowing the _____ number of entity occurrences is very helpful at the application software level. Question 5. 5. (TCO 6) The _____ statement can be used to enable or disable a constraint. Question 6. 6. (TCO 6) When modifying the data characteristics of a column in Oracle, which of the following is correct? Question 7. 7. (TCO 6) Which of the following keywords can be used to change the size, datatype, or default value of an existing column? Question 8. 8. (TCO 7) Any type of subquery can be used in the _____ clause of a SELECT statement Question 1. 1. (TCO 7) Which of the following subqueries returns more than one row of results to the outer query? Question 2. 2. (TCO 7) To list a unique value, where the list will produce only a list of those values that are different from one another, you will write the command _____
  • 3. Question 3. 3. (TCO 8) Based upon the contents of the BOOK_ORDER table shown below, which of the following SQL statements will display the ship date for order 1006 as April 2, 2002? Question 4. 4. (TCO 8) Which of the following format elements will display insignificant leading zeros? Question 5. 5. (TCO 8) Which of the following functions determines the number of characters in a character string? Question 6. 6. (TCO 9) The column to be updated by the UPDATE command is specified in the _____ clause. Question 7. 7. (TCO 9) Using the promotion table shown below, which of the following SQL statements will insert a new row into the PROMOTION table? Question 8. 8. (TCO 10) Which of the following commands is used to establish a user account? Question 9. 9. (TCO 10) Which command will delete a user account from Oracle9i? Question 1. 1. (TCO 2) Explain what physical independence means. Question 2. 2. (TCO 3) What is a composite primary key and in what situation are they most commonly used? Give an example. Question 3. 3. (TCO 7) Sally needs to find all employees who have a date of hire between 01-JAN-2003 and 01-JAN-2005. She writes and executes the following query. Question 4. 4. (TCO 8) In a table named ORDER, there is a column named SHIPDATE that contains a date for each order that has been shipped. Write the query that would show the number of orders that have
  • 4. been shipped. List the column name as Number of Orders Shipped for this derived column. Question 5. 5. (TCO 6) Write the SQL statement that will remove the database table EMPLOYEE. Question 1. 1. (TCO 7) Write a join query that for every order placed on September 5, 1998, (use '05-SEP-1998') will list the order number and order date along with the customer number, last name, and first name of the customer who placed the order. Question 2. 2. (TCO 8) Write a query that will list the part number, part description, and on-hand value (units on hand * unit price) for each part in item class AP. Give the expression an alias of on-hand value. Question 3. 3. (TCO 8) Write a subquery that will list the part number, part description, and units on hand of all parts where the number of units on hand is greater than the average of units on hand for all parts. Question 4. 4. (TCO 7) Using the orders table, write a query that will list the order number, date, and customer number for every order that was made prior to September 5, 1998. Format the date in your result set to be in the same format as above (i.e., September 5, 1998). Question 5. 5. (TCO 7) Using a NATURAL JOIN method, write a query that will list the customer number, last name, and first name for every customer who currently has an order on file for an iron. ============================================== CIS 336 Final Exam 1 (Devry)
  • 5. FOR MORE CLASSES VISIT www.cis336study.com 1. (TCO 1) Most DBMS are referred to as _____________database management systems. (Points : 4) elemental linked hierarchical relational 2. (TCO 1) Data constitutes the building blocks of _____________. (Points : 4) information processing applications programming 3. (TCO 2) If a foreign key contains either matching values or nulls, the table(s) that make use of such a foreign key is/are said to exhibit __________ integrity. (Points : 4) referential
  • 6. restrictive secondary redundant 4. (TCO 2) In a "one-to-many" relationship, which constraint is usually added to the "many" table? (Points : 4) UNIQUE PRIMARY KEY FOREIGN KEY NOT NULL 5. (TCO 3) A ____ occurs when a relationship is improperly or incompletely identified and, therefore, is represented in a way that is not consistent with the real world. (Points : 4) surrogate primary keys time-variant data design trap fan trap 6. (TCO 3) All of the following are true about a prime attribute except_____________. (Points : 4) it is a key attribute
  • 7. it is at least part of a key it is not a key attribute it may be part of a composite key 7. (TCO 3) The conflicts between design efficiency, information requirements, and processing speed are often resolved through_____________. (Points : 4) conversion from 1NF to 2NF conversion from 2NF to 3NF compromises that include denormalization conversion from 3NF to 4NF 8. (TCO 4) When a constraint is created at the ______ level with the CREATE TABLE command, the constraint definition is simply included as part of the column definition.(Points : 4) table column database row Page 2 - Multiple Choice 1. (TCO 4) In Oracle, the CONSTRAINT clause is used to ___________________. (Points : 4)
  • 8. create only referential constraints define and name any constraint create a short cut so the constraint does not have to be named create only entity entegrity constraints 2. (TCO 4) The SQL command that lets you list the table contents is (Points : 4) insert. select. commit. update. rollback. 3. (TCO 5) The Crow's Foot model is more ___________- oriented than the Chen model. (Points : 4) object user implementation processor 4. (TCO 5) The ___________ model is both software and hardware dependent. (Points : 4)
  • 9. conceptual logical condensed physical 5. (TCO 6) Which of the following commands will add a new column named FIRSTORDERDATE to the CUSTOMERS table to store the date that the customer first placed an order with the company? (Points : 4) CREATE COLUMN firstorderdate, DATE TO customers; ALTER TABLE customers ADD COLUMN firstorderdate DATE; ALTER TABLE customers ADD firstorderdate DATE; ALTER TABLE customers ADD (firstorderdate DATE); 6. (TCO 6) When modifying the data characteristics of a column in Oracle, which of the following is correct? (Points : 4) The column size can be increased. The size of the column can be decreased. Changing the default value of a column will change the values of data already in a table.
  • 10. If a NUMBER column is empty, its precision and scale cannot be changed. 7. (TCO 6) Which of the followig SQL commands would alter the table DEVRY and add a foreign key that references the CITY table? (Points : 4) ALTER table DEVRY ADD CONSTRAINT devry_studentcity_fk references city; ALTER table DEVRY ADD CONSTRAINT devry_studentcity_fk FOREIGN KEY references city; ALTER table DEVRY ADD CONSTRAINT devry_studentcity_fk FOREIGN KEY (student_city) references city; ALTER table DEVRY ADD CONSTRAINT FOREIGN KEY (student_city) references city; 8. (TCO 7) Given a table named EMPLOYEE, the SQL command to sort records in a specific order would be: (Points : 4) SELECT EMP_LNAME, EMP_FNAME, EMP_INITIAL, EMP_AREACODE, EMP_PHONE FROM EMPLOYEE
  • 11. LIST BY EMP_LNAME, EMP_FNAME, EMP_INITIAL; SELECT EMP_LNAME, EMP_FNAME, EMP_INITIAL, EMP_AREACODE, EMP_PHONE FROM EMPLOYEE ORDER BY EMP_LNAME, EMP_FNAME, EMP_INITIAL; SELECT EMP_LNAME, EMP_FNAME, EMP_INITIAL, EMP_AREACODE, EMP_PHONE FROM EMPLOYEE DISPLAY BY EMP_LNAME, EMP_FNAME, EMP_INITIAL; SELECT EMP_LNAME, EMP_FNAME, EMP_INITIAL, EMP_AREACODE, EMP_PHONE FROM EMPLOYEE SEQUENCE BY EMP_LNAME, EMP_FNAME, EMP_INITIAL; Page 3 - Multiple Choice 1. (TCO 7) Which of the following subqueries returns more than one row of results to the outer query? (Points : 4) multiple-column subquery single-row subquery
  • 12. multiple-row subquery correlated subquery 2. (TCO 7) Which of the following keywords can be used to join two tables that do not contain a commonly named and defined column? (Points : 4) NATURAL JOIN JOIN...ON JOIN...USING JOIN...WHERE 3. (TCO 8) Based upon the contents of the BOOKS table shown below, which of the following SQL statements will return the number of categories contained in the table? (Points : 4) SELECT COUNT(DISTINCT category) FROM books; SELECT DISTINCT COUNT(category) FROM books; SELECT DISTINCT (COUNT(category)) FROM books; SELECT DISTINCT COUNT(category) FROM books; 4. (TCO 8) The _____________ function can be used to display upper-case characters in lower-case. (Points : 4) CONVERT MIN
  • 13. LESS LOWER 5. (TCO 8) Which of the following statements will produce the value 21.1? (Points : 4) SELECT ROUND(21.12, 1) FROM dual; SELECT ROUND(21.12, -1) FROM dual; SELECT ROUND(21.12, 0) FROM dual; SELECT ROUND(21.12, 0+) FROM dual; 6. (TCO 9) The column to be updated by the UPDATE command is specified in the ______ clause. (Points : 4) UPDATE SET WHERE COL 7. (TCO 9) If the INSERT INTO command is used to insert data values that violate an existing constraint in a table, which of the following will happen. (Points : 4) Oracle will raise an error and you will have to go update the incorrect data. Oracle will raise an error and the entire row will be rejected.
  • 14. Oracle will raise an error and the invalid piece of data will be rejected. Oracle will raise and error and all current transactions will be rolled back. 8. (TCO 10) Which of the following commands is used to establish a user account? (Points : 4) CREATE NEW USER username IDENTIFIED BY password; CREATE USERNAME username IDENTITY password; CREATE USER username PASSWORD password; CREATE USER username IDENTIFIED BY password; 9. (TCO 10) Which command will grant a system privilege to a user? (Points : 4) GRANT systemprivilegeUSERNAME username GRANT PRIVILEGE systemprivilegeTO username GRANT systemprivilegeTO username GRANT systemprivilege ON username
  • 15. ============================================== CIS 336 Final Exam 2 (Devry) FOR MORE CLASSES VISIT www.cis336study.com 1. (TCO 1) Most DBMS are referred to as _____________database management systems. (Points : 4) elemental linked hierarchical relational 2. (TCO 1) A relational DBMS provides protection of the _______________________ through security, control, and recovery facilities. (Points : 4) user network system
  • 16. database 3. (TCO 2) If a foreign key contains either matching values or nulls, the table(s) that make use of such a foreign key is/are said to exhibit __________ integrity. (Points : 4) referential restrictive secondary redundant 4. (TCO 2) A field that consists of integer values is a _________ type field. (Points : 4) Date/Time Yes/No Memo Numeric 5. (TCO 3) The PK must uniquely identify each entity instance. A primary key must be able to guarantee unique values. It cannot contain nulls. This rationale belongs to ____. (Points : 4) Unique values Nonintelligent Preferably single-attribute
  • 17. Security complaint 6. (TCO 3) A table that is in 1NF and includes no partial dependencies only is said to be in_____________. (Points : 4) 1NF. 2NF. 3NF. 4NF. BCNF. 7. (TCO 3) A table that has all key attributes defined, has no repeating groups, and all its attributes are dependent on the primary key, is said to be in_____________.(Points : 4) 1NF. 2NF. 3NF. 4NF. BCNF. 8. (TCO 4) In Oracle, the DEFAULT constraint is used to ____________________. (Points : 4) define which column is the default primary key if one is not explicitly named
  • 18. define which column is the default foreign key if on is not explicitly named assign a value to an attribute when a new row is added and a value is not defined validate data when a value is added to an attribute Page 2 - Multiple Choice 1. (TCO 4) Which of the following is not considered a database object? (Points : 4) a table a view a constraint a sequence an index 2. (TCO 4) Which of the following SQL statements would you use to create a table named DEVRY? (Points : 4) CREATE Devry ( Student_id NUMBER (12), Student_name VARCHAR2 (15), Student_city VARCHAR2 (12)
  • 19. ); CREATE TABLE Devry ( Student_id NUMBER (12) Student_name VARCHAR2 (15) Student_city VARCHAR2 (12) ); CREATE TABLE Devry ( Student_id NUMBER (12), Student_name VARCHAR2 (15), Student_city VARCHAR2 (12) ); CREATE TABLE Devry Student_id NUMBER (12), Student_name VARCHAR2 (15), Student_city VARCHAR2 (12); 3. (TCO 5) The ____ constraint requires that a specific condition be met before a record can be added to a table. (Points : 4)
  • 20. UNIQUE REFERENCE CONDITION CHECK 4. (TCO 5) The ___________ model is both software and hardware dependent. (Points : 4) conceptual logical condensed physical 5. (TCO 6) The _________________________ statement can be used to enable or disable a constraint. (Points : 4) alter table modify table create table update table 6. (TCO 6) When using the ALTER TABLE...DROP COLUMN command, which of the following is not correct? (Points : 4) The command's effect on the table is permanent.
  • 21. You cannot delete the last remaining column in a table. The command deletes both the column and its contents. The command can be used to delete multiple columns from a table. 7. (TCO 6) Which of the following keywords can be used to change the size, datatype, and/or default value of an existing column? (Points : 4) ADD MODIFY CHANGE RESET 8. (TCO 7) Any type of subquery can be used in the _________ clause of a SELECT statement. (Points : 4) WHERE HAVING FROM ORDER BY GROUP Page 3 - Multiple Choice 1. (TCO 7) Using the BOOK_CUSTOMER and BOOK_ORDER tables shown below for references, which
  • 22. SQL statement will return the same results as the following SQL statement? SELECT * FROM book_customer, book_order; (Points : 4) SELECT * FROM book_order CROSS JOIN book_customer; SELECT * FROM book_order, book_customer WHERE book_order.customer# = book_customer.customer#; SELECT * FROM book_order, book_customer WHERE book_order.customer# >book_customer.customer#; SELECT * FROM o book_order , c book_customer WHERE o.customer# = c.customer#; 2. (TCO 7) If a Cartesian join is used to link table A which contains five rows to table B which contains eight rows, there will be _______ rows in the results. (Points : 4) 8 13 5
  • 23. 40 3. (TCO 8) Based upon the contents of the BOOK_ORDER table shown below, which of the following SQL statements will display the ship date for order 1006 as April 2, 2002? (Points : 4) SELECT order#, TO_CHAR(shipdate, 'fmMonth DD, YYYY') FROM book_order; SELECT order#, TO_DATE(shipdate, 'fmMonth DD, YYYY') FROM book_order; SELECT order#, TO_CHAR(shipdate, 'Month DD, YYYY') FROM book_order; SELECT order#, TO_DATE(shipdate, 'Month DD, YYYY') FROM book_order; 4. (TCO 8) Based upon the contents of the BOOK_ORDER table shown below, which of the following SQL statements will display only those orders shipped to the zip code zone that begins with 323? (Points : 4) SELECT order#, SUBSTR(shipzip, 1, 323)
  • 24. FROM book_order; SELECT order#, SUBSTR(shipzip, 1, 323) FROM book_order WHERE ; SELECT order# FROM book_order WHERE (shipzip, 1, 323); SELECT order# FROM book_order WHERE SUBSTR(shipzip, 1, 3) = 323; 5. (TCO 8) Which of the following functions determines the number of characters in a character string? (Points : 4) COUNT NUMBER LENGTH DECODE 6. (TCO 9) Which of the following is not a valid SQL command? (Points : 4) UPDATE acctmanager SET WHERE ; UPDATE acctmanager SET (amname);
  • 25. UPDATE acctmanager SET (amname) WHERE ; UPDATE acctmanager WHERE ; 7. (TCO 9) Using the promotion table shown below, which of the following SQL statements will insert a new row into the PROMOTION table? (Points : 4) INSERT INTO promotion (gift, minretail, maxretail) VALUES (FREE BOOK, 75.01, 89.99); INSERT INTO promotion (gift, minretail, maxretail) VALUES ('FREE BOOK', 75.01, 89.99); INSERT INTO promotion VALUES (FREE BOOK, 75.01, 89.99); INSERT INTO promotion (gift, minretail) VALUES (FREE BOOK, 75.01, 89.99); 8. (TCO 10) A ____ is a uniquely identifiable object that allows a given person to log on to the database. (Points : 4) user
  • 26. role profile manager 9. (TCO 10) Which command will delete a user account from Oracle9i? (Points : 4) DELETE USER username; DELETE USER username IDENTIFIED BY password; DROP USER username IDENTIFIED BY password; DROP USER username; Page 4 - Essays 1. (TCO 2) What is Character data? (Points : 15) 2. (TCO 3) Explain the term "second normal form". (Points : 15) 3. (TCO 7) Sally needs to find all employees who have a date-of-hire between 01-JAN-2003 and 01-JAN-2005. She writes and executes the following query: 4. (TCO 8) In using group functions we cannot place a group function in a WHERE clause. Explain how the WHERE clause and HAVING clause are similar and why you can use the HAVING with a group function but not a WHERE clause. (Points : 15)
  • 27. 5. (TCO 6) Write the SQL statement that will remove the database table EMPLOYEE. (Points : 15) 1. (TCO 7) Write a join query using NATURAL JOIN that for every order in the ORDERS table will list the order number and order date along with the cusnumber, last name, and first name of the customer who placed the order. 2. (TCO 8) Write a query that will list the part number, part description, and on-hand value (units on hand * unit price) for each part in item class AP. Give the expression an alias of "On Hand Value". 3. (TCO 8) Write a sub query that will list the part number, part description, and units on hand of all parts where the number of units on hand is greater than the average of units on hand for all parts. 4. (TCO 7) Using the BETWEEN operator, write a query that will list all details about all orders that were placed during the period of September 3rd thru September 5th of 1998. 5. (TCO 7) Write a query that will list the part number and part description for all parts in the PART table. (Points : 15) ==============================================
  • 28. CIS 336 Final Exam 3 (Devry) FOR MORE CLASSES VISIT www.cis336study.com 1. (TCO 2) Explain what physical independence means. (Points : 15) 2. (TCO 8) Sally wants to query the EMP table and determine how many of the employees live in each of the cities the company has factories in. She writes the following query but it does not work. What is wrong with the way the query is constructed? 3. (TCO 3) Explain in what two specific cases presented in the text composite primary keys are particularly useful. (Points : 15) 4. (TCO 7) How are comparisons done on character string data in a queries WHERE clause, and why would this be especially useful in comparing certain attributes? (Points : 15) 5. (TCO 6) Oracle will not allow the changing of a column's data type unless the column is empty, and even then it may still be prohibited. Discuss why? (Points : 15)
  • 29. 6. (TCO 7) Write a join query using NATURAL JOIN that for every order in the ORDERS table will list the order number and order date along with the cusnumber, last name, and first name of the customer who placed the order. 7. (TCO 8) Write a query that will list the part number, part description, and on-hand value (units on hand * unit price) for each part in item class AP. Give the expression an alias of "On Hand Value". 8. (TCO 8) Write a query that will display the customer number, first name, and last name for every customer with a balance greater than $50. Display the first and last name as a single column and provide an alias for the column. 9. (TCO 7) Write a query that will list the customer number, last name, and first name for every customer represented by sales rep 03 or sales rep 12. 10. (TCO 7) Write a query that will list the customer first and last name and the sales rep commission rate using JOIN ON. ============================================== CIS 336 Final Exam 4 (Devry) FOR MORE CLASSES VISIT
  • 30. www.cis336study.com 1. (TCO 7) For every order, list the order number, order date, part number, part description, and item class for each part that makes up the order. 2. (TCO 8) Write a query that will display the customer number, last name, and first name for every customer I whose first name begins with the letter "D". 2. (TCO 8) Write a query that will display the earliest date an order was placed. 3. (TCO 7) Using the BETWEEN operator, write a query that will list all details about all orders that were placed during the period of September 3rd thru September 5th of 1998. 5. (TCO 7) Write a query that will list the customer first and last name and the sales rep commission rate using JOIN ON. ============================================= = CIS 336 Final Exam 4 Sets of Answers (Devry)
  • 31. FOR MORE CLASSES VISIT www.cis336study.com CIS 336 Final Exam 4 Sets of Answers ============================================== CIS 336 Group Project FOR MORE CLASSES VISIT www.cis336study.com This project is designed to touch all aspects of the fundamental concepts of database design and logical data modeling covered during the class. Each student will be responsible for designing, developing, and demonstrating the functionality of a database created based on a set of business specifications that you create. At the end of the session, each student will submit a report that includes the logical and physical design of the database and demonstrates the database's ability to deliver meaningful reports. All aspects of the project will be covered during the week or weeks prior to a deliverable, and each task deliverable in the project will be supported through the exercises and labs done in the course.
  • 32. Guidelines You will create a proposal for a commerce business of your choosing. This can be an actual or fictional business that sells products and/or services. You will determine the business rules and report requirements. Entities that must be included in your model are the following. Customer Product (or Service) Order Project Deliverables This task is broken down into four deliverables. · Task 0 · Task 1 · Task 2 · Task 3 Remember that this is a work in progress and in all likelihood, you will have to make numerous changes to your tables and schema as you go along. These changes are to be expected and are a normal part of the database design and implementation process. Please refer to the sections below for details regarding deliverables for each task.
  • 33. Task 0 The first task is to create your business narrative. Some of the questions that you should address include (but are not limited to) the following. · What is the name of your business? · Who will be the users of the system (managers, employees, customers)? · What product(s) and or service(s) does it sell? Be specific. · Who are the customers? What is the customer base? · What sales and distribution channels are used? · How are payments made? · Are products delivered or shipped to customers in some way? · Are sales reps involved? Are they paid on commission? · What type of reports are needed by the business? Please include as much detail as possible in order to provide a foundation for Task 1. Submit your proposal as a Word document. Note that this proposal may be revised in the coming weeks as your understanding of the database modeling process grows. Task 1
  • 34. Develop a detailed logical model of your database based on your business scenario submitted for Task 0. Your data model will include an entity-relationship diagram (ERD) developed with Microsoft Visio or MySQL and a data dictionary (DD) developed with Microsoft Excel. Note that your deliverables each week include any revisions to the previous task. Submit your Task 1 deliverable as a zip file including the following. · Task 0 proposal (with any revisions or updates) · Your ERD copied to a Word document that fits on a single 8 x 10 page · Your DD (Excel file) Task 2 First, make sure to make any necessary revisions to your logical model based on Task 1 feedback. Using MySQL, write the statements to develop a physical model of your database by creating the tables and constraints based on your Task 1 logical model. Be sure to use your ERD and data dictionary and create all constraints appropriately. Once your tables are created, you will populate them with data using MySQL statements to insert records into the database. You should insert a minimum of five records into each table and more where necessary to ensure that the data in the database is sufficient to allow for each of your reports to be tested. The result will be a script file that includes statements to
  • 35. · DROP all tables; · CREATE all tables with constraints; · INSERT data into all tables; and · SELECT data from all tables to show the data in each table. Name this file yourname_task2.txt. Also create a Word document that shows the structure of each table and the data in each of your tables (copy and paste from MySQL). Name this file yourname_tables.docx. Note that your deliverables each week include any revisions to a previous task. Submit your Task 2 deliverable as a zip file including the following. · Task 0 proposal (with any revisions) · Your Task 1 ERD (with any revisions) · Your Task 1 DD (with any revisions) · Your Task 2 script file to create and populate tables (yourname_task2.txt) · A Word document showing all tables and data (yourname_tables.docx) Task 3 Your final task is to use your tables for an update and for reports. There are two requirements.
  • 36. 1. You will demonstrate an update that includes two tables and uses a subquery. Make sure to prove that your update executed correctly by showing data in the tables before and after the update. 2. You will also develop at least four meaningful reports. One must include a join, one must use a subquery, and one must use an aggregate function. You need to describe the business requirement of the update and each report. Note that numeric PK values are not often meaningful to a person looking at the report. You will create a script file that has each of the queries called yourname_task3.txt. You will also document the results of this task in a Word document called yourname_reports.docx to show the result of each query. For the update and each report, · describe the update and report requirement; · show the query; and · show the result of the query. Include a final section for Conclusions and Lessons Learned regarding the project.Note that your deliverables each week include any revisions to a previous task.Submit your Task 3 deliverable as a zip file including the following. · Task 0 proposal (with any revisions) · Your Task 1 ERD (with any revisions) · Your Task 1 DD (with any revisions) · Your Task 2 script file to create and populate tables (with any revisions)
  • 37. · A Word document showing all tables and data (with any revisions) · Your Task 3 script file with update and reports (yourname_task3.txt) · A Word file with results of Task 3 and lessons learned (yourname_reports.docx) ============================================== CIS 336 iLab 1 Normal Forms and Entity Relationship Diagrams FOR MORE CLASSES VISIT www.cis336study.com CIS336 Lab 1: Normal Forms and Entity Relationship Diagrams Introduction In this exercise, you will analyze a de-normalized data set presented in the form of a spreadsheet. You will next construct a series of dependency diagrams, transforming the evolving data model from First Normal Form (1NF), to Second Normal Form (2NF), and finally to Third Normal Form (3NF). When the model has reached 3NF, you will construct the Entity Relationship Diagram (ERD) depicting the
  • 38. logical design of the database. Your ERD will use Crow’s Foot notation to denote the relationships between tables. Sample Exercise, With Solution Before completing your lab, please review this example problem. The diagram below is a partial depiction of a business spreadsheet for a retail store operation. The store sells books. Books have a 13-digit International Standard Book Number (ISBN), a title, a publisher, and a unit price. Invoices track sales of books. An Invoice contains one or many line items, with each line item reflecting the sale of one or more copies of a specific book. Every publisher has a company name, and a publisher code. InvNum ISBN13 InvDateBookTitlePubCodePubNameQtyunitPrice 1022 9781291940336 2015-03-09 MYSQL Functions 1001 Lulu.com 3 4.99 1022 9780321833877 2015-03-09 MySQL, Fifth Edition 1029 Addison-Wesley 5 33.95 1022 9781890774820 2015-03-09 Murach’s MySQL, 2nd Edition 1032 Murach, Mike & Associates, Inc 2 48.95 1249 9781449374020 2015-02-22 MySQL Cookbook: Solutions for Database Developers and Administrators 1118 O’Reilly Media, Incorporated 9 50.59 1249 9781449325572 2015-02-22 PHP & MySQL: The Missing Manual 1118 O’Reilly Media, Incorporated 6 29.95 1249 9781890774790 2015-02-22 Murach’s PHP and MySQL, 2nd Edition 1032 Murach, Mike & Associates, Inc 1 48.95 BookSales
  • 39. 1. Using the BookSales table structure shown above, draw the dependency diagram, and show all dependencies, full, partial, and transitive. Figure 1 -solution 1 Discussion: A composite primary key consisting of InvNum + ISBN13 can be constructed, ensuring that all rows are unique. All remaining attributes are shown to be dependent (at least partially) on this composite key, so the table is 1NF. Further analysis shows that InvDate is dependent on only part of the key (InvNum), and that unitPrice, PubCode, and BookTitle also depend on part of the key (ISBN13). A transitive relationship is also revealed: PubName truly depends on PubCode, which in turn depends on ISBN13. 2. Using the answer to exercise 1, remove all partial dependencies and draw the new dependency diagrams. For each new table created, specify its normal form (1NF, 2NF, 3NF). Figure 2- solution 2 Discussion: To achieve 2NF, we must remove partial dependencies. This is done by decomposing into three tables, and three dependency diagrams at this stage. Notice that the Transitive relationship has not yet been addressed. 3. Using the answer to exercise 3, remove all transitive dependencies, and draw the new dependency diagrams. For each new or revised table, specify its normal form. Figure 3 – Solution 3
  • 40. Discussion: The transitive relationship has been removed by creating the Publishers table, in which PubName is fully dependent upon PubCode. Pubcode also persists as a dependent attribute and Foreign Key in Books. All tables are now in 3NF, and have been given meaningful names reflecting the entities they represent. LINEITEMS represents the collection of line items for all invoices. Invoices represents the collection of Invoices for all customer orders. Books makes up the list of all books available for sale (whether they have ever been ordered or not). Each book has a publisher, and the publisher code and Name reside in the Publishers table. 4. Draw the ERD for exercise 3, using Crow’s Foot notation. End of Sample Exercise. Student Exercise The student exercise for this lab is similar to the sample exercise presented above. Consider the following spreadsheet containing information about customers, their shipping and billing addresses, and the countries corresponding to each of those addresses. A customer may be associated with zero to many addresses. A customer may have 0 or 1 default billing address. A customer may have 0 or 1 default shipping address. Each address may be associated with 0 or 1 countries, while each country may be associated with 0 to many addresses. cust_idfnamelnamedef_bill_addr_iddef_ship_addr_idaddr_idstreet_ad dr city state zip country_codecountry_name
  • 41. 202 John Smith 1096 2039 1096 123 Happy Ave. Orlando FL 32801 76 United States 202 John Smith 1096 2039 2039 2024 Shorline Dr. Seattle WA 98101 76 United States 202 John Smith 1096 2039 8053 100 N. Kent Ave. St. James WA 34 Jamaica 175 Hilda Yeager 2172 2172 3879 48 Spatzel Ct. Dusseldorf 5111 29 Germany 175 Hilda Yeager 2172 2172 3921 162 Rue Moritz Paris 75001 28 France 321 Siri Apple 1881 1881 1881 1 Infinite Loop Cupertino CA 95014 76 United States Using the example solution as a guide, perform the following steps. 1. Using the CustomerAddressCountry spreadsheet show above, draw the dependency diagram, and show all dependencies, full, partial, and transitive. Paste your solution into the answer sheet, and label it, Answer #1. 2. Using the answer to exercise 1, remove all partial dependencies and draw the new dependency diagrams. For each new table created, specify its normal form (1NF, 2NF, 3NF). Paste your solution into the answer sheet, and label it, Answer #2. 3. Using the answer to exercise 3, remove all transitive dependencies, and draw the new dependency diagrams. For each new or revised table, specify its normal form. Paste your solution into the answer sheet, and label it, Answer #3.
  • 42. 4. Draw the ERD for exercise 3, using Crow’s Foot notation. Paste your solution into the answer sheet, and label it, Answer #4. ============================================== CIS 336 iLab 2 The Expanded Entity Relationship Diagram FOR MORE CLASSES VISIT www.cis336study.com CIS336 Lab 2: The Expanded Entity Relationship Diagram LAB OVERVIEW Scenario and Summary This lab introduces the next step in creating a data model, the Entity Relationship Diagram (ERD). You will be given a business scenario for a University Medical Center, which is a small community hospital. The business specifications will outline a number of things about the business, some of which will apply directly to the database you are being asked to model. There is a table that lists the entities (tables) that will be needed for the database and related attributes (columns) for each entity. There is also a column that lists specific information about the entity that will be helpful in determining its relationship to other entities within the model.
  • 43. Be sure to include the minimum and maximum occurrences of each relationship (cardinality) and to supply a name to the relationship that will work in both directions. Make sure to use Crow’s Feet notation in your ERD. Narrative/Case Study The University Medical Center is a small, community hospital. A new hospital administrator has recently been hired by the Board of Directors, and directed to right-size patient care and pharmacy services and improve profitability. The hospital operates three clinical facilities: the main hospital, a mid-town clinic, and an Urgent Care location. The hospital also offers selected in-home care services. Many of the patients are repeat or regular patients who receive regular treatment for various conditions, and many utilize the hospital’s pharmacy services for prescription medications. The pharmacy dispenses about 3,000 different prescription medications of various kinds. Every prescription is associated with one patient, and is logged by the dispensing clinic. The new administrator wants to know which drugs are most prescribed, and also which are the most profitable. The following is some general information about the organization and its current processes. • The hospital operates three clinical facilities. • A healthcare worker logs in at a facility at the start of a shift and logs out at the end. • The name, address, Social Security number and other information is recorded for every healthcare worker.
  • 44. • All healthcare workers have one billing rate, which is determined by their job description. • Each medication dispensed by prescription is linked to both the prescription number and the medication ID number, recording the item price and the quantity dispensed. As a convenient and affordable means of providing hospice care, palliative care, and convalescent care to patients that need occasional/intermittent skilled nursing, but do not require hospitalization, the hospital offers limited in-home care. Recording of in-home care includes the healthcare worker ID, their departure time and return time, and also the prescription ID for any prescriptions administered by the healthcare worker in the home setting. The hospital administrator would like to know what home-care visits have been made to whom, by whom, when, and how long they took. There is concern at this point that the cost of providing limited home healthcare is not providing adequate return on investment, and the program should be revised or discontinued. Requirements You have been asked to develop a logical data model for University Medical Center based on the information given to you by the new hospital administrator and their staff. Through analysis of the nouns and verbs in the case study above, you have accumulated the following entity, attribute, and relationship information shown in the table below. The attribute list may not be complete. If you determine that additional attributes are needed to better define an entity, then you should add them.
  • 45. Entities Attributes and Relationships for University Medical Center (Parallel Lab Exercise): Entity Attributes Relationships HealthcareWorkerHealthcareWorkerID, LastName, FirstName, SSN, Address, City, State, Zip, Phone Number, HealthcareWorkerTypeID A healthcare worker can belong to any one of the three job categories, but can belong to one and only one of the three. healthcare worker has names and other contact information. HealthcareWorkerTypeHealthcareWorkerTypeID, HealthcareWorkerTypeDesc, HourlyBillingRate A healthcare worker can be either a physician (diagnoses, prescribes medication), nurse (provides physician-ordered treatments, administers medications), or a pharmacist (dispenses, delivers medication). ClinicLogClinicLogID, ClinicID, Login, Logout, HealthcareWorkerID Patients may be treated by a healthcare worker at a clinic and can be tracked by the clinic log number. A healthcare worker must sign into the clinic before he or she can serve patients, and must sign out when finished treating patients at that clinic. A healthcare worker may serve portions of a shift at more than one clinic. Clinic ClinicID, ClinicLocationDesc, AMAAccredNum The hospital operates three clinical facilities: General Hospital, Midtown Clinic, and Urgent Care. InHomeCareInHomeCareID, HealthcareWorkerID, PrescriptionID, DepartTime, ReturnTime. Relates to both the healthcare worker and the prescription entities. This entity will help track provision of home healthcare. A healthcare worker can provide many home visits but a
  • 46. prescription is administered on a home visit by one and only one healthcare worker. Method MethodID, Method Description Relates to medication and identifies the method of administration, for example, oral, injection, and so on. Medication MedicationID, MedicationName, Dosage, Cost, QuantityOnHand, LastPurchasedDate, ReorderMinimum Identifies the medication the hospital pharmacy dispenses. One or more medications can be dispensed per prescription. The quantity on hand allows Pharmacists to determine the inventory levels. The reorder minimum can be used to determine when the inventory level has reached a reorder point. Prescription PrescriptionID, MedicationID, BillingAmount, TransactionDateTime, ClinicLogID, PatientID A prescription is identified by a single prescription order. Prescriptions are • made to one or more patients but only one patient at a time; • made by one or more pharmacists but only one pharmacist per prescription; • recorded on one or more clinics but only one clinic per prescription; and • administered by one or more nurses but no one prescription can be administered by more than one nurse. PrescribedMedicationPrescriptionID, MedicationID, ItemPrice, QuantityDispensed Prescribed medication is part of a prescription and records medication dispensed per prescription. Prescribed medication
  • 47. must be able to associate multiple medications sold on a single prescription number. Patient Patient Number, First Name, Last Name, Address, City, State, Zip, Phone Number A patient can be associated with multiple prescriptions, but any one prescription is to one and only one patient. A prescription can occur without a patient registering in the system (e.g., an unconscious patent arrives by ambulance in the emergency room and receives life-saving emergency treatment). Using an appropriate drawing/data modelling tool, develop an ERD that meets the following guidelines. • Draw the entities with their attributes. • Indicate the relationships between the entities using Crow’s Foot notation. You will need to determine the cardinality and optionality for each direction of the relationships. Some of the Foreign Key relationships are identified in the graph above but not all. Be sure you identify and account for all Foreign Key relationships. • Add a name (in both directions) to the relationships. Remember, if you can verbalize the relationship in both directions, then you probably have a valid relationship. Deliverables The deliverable for this lab will be your completed ERD as a single MS Word document using copy/paste or imported as an image from your drawing/modelling application, cropped and sized appropriately (it should fit on a single page), and named lab2_solutions_yourname. LAB STEPS STEP 1: Drawing Entities and Attributes
  • 48. Back to Top Be sure to include all of the entities that have been defined. You need to include at least the primary and foreign key attributes where applicable in your diagram. STEP 2: Add Relationships Back to Top Be sure that you link all entities based on PK to FK relationships. There may be a case where you need to identify a combination PK and if so make sure that all of the relationships involved are defined. Be sure that you have set your drawing/modelling tool set to show Crow’s Foot notation. Also, be sure that you are defining the correct cardinality for the relationships. STEP 3: Naming of relationships Back to Top If your drawing/modelling tool creates a default name for relationships, do not simply accept this default without due consideration. There may be some relationships where the default is applicable, but in most cases you will want to explicitly name the relationship. Be sure that you have provided a verb phrase for both directions in the relationship. This is the end of lab #2#4. ============================================== CIS 336 iLab 3 Building the Physical
  • 49. FOR MORE CLASSES VISIT www.cis336study.com CIS-336: Lab 3: Building the Physical LAB OVERVIEW Scenario and Summary The lab for this week addresses taking a logical database design (data model) and transforming it into a physical model (tables, constraints, and relationships). As part of the lab, you will need to download the zip file titled CIS336Lab3Files from Doc Sharing. This zip file contains the ERD, Data Dictionary, and test data for the tables you create as you complete this exercise. Your job will be to use the ERD Diagram found below as a guide to define the table structures and constraints using both CREATE TABLE and ALTER TABLE statements. Once this has been done, you will need to write the INSERT INTO TABLE statements to insert the data provided into the table. The data should verify that the constraints you have created are valid and define the correct referential and data
  • 50. integrity constraints asked for. Lastly, you will write SELECT statements to query the tables and verify the data was populated. Please use exactly the data provided, without addition, deletion, or alteration except as directed, as your results may be evaluated against expected results generated using this exact data set. Narrative/Case Study For this lab, you will be creating SQL statements to build a series of relational tables, using SQL CREATE statements in a script file format for the Student Database. You will then populate those tables through the use of INSERT statements with sample data. You will need to create a script file and name it YourName_Lab3.txt containing the following code. 1. The drop table statements listed later in the specifications of this lab. 2. The CREATE TABLE statements required to build the six tables. 3. The INSERT statements necessary to insert all of the sample data. 4. Six select statements to verify that the data is in the tables and accessible. To help you accomplish this task successfully, you are being supplied with the ERD Diagram which follows, and the exact data to be inserted into each table, which may be found via the Doc Sharing tab
  • 51. on the course website. The following guidelines are being provided to help assist you in creating your script file. · Use the names for the tables and columns as listed in the ERD. Do not change them as it will affect your grade. · Creating Constraints o Create all NOT NULL constraints as indicated in the ERD. o Create all PK constraints as indicated in the ERD. o Create all FK constraints as indicated in the ERD. · Create all of the tables and all of the constraints before populating any of the tables with data. · Because FK constraints will be in place when the insert statements are executed, you will need to consider carefully which tables must be created before others in order to ensure that FK constraints are not violated. · The COURSE table has a self-referencing FK constraint. Specifically, some courses have prerequisite courses. Consequently, the record for a course possessing a prerequisite course cannot be successfully inserted into the table unless the record for the prerequisite course has
  • 52. already been inserted. This may require you to reorder the insert statements to resolve FK violations when loading the table. You may reorder the data provided for this table, but do not alter it. · The data for one table intentionally contains a record containing an FK constraint that is not resolved by a record in the parent table. This orphaned record has been included as an exercise for you to find. Because this record has an unreconciled FK constraint, it cannot be successfully inserted. You will need to delete or comment out the insert statement for this one record in order to produce a script that runs without errors. · Aside from reordering the data for the COURSE table as necessary, and commenting out/deleting the ONE record whose FK dependency cannot be resolved by the data provided, you are NOT to modify, add to, or delete from the data provided. Your SQL script must produce tables containing data identical to the expected solution set, or points will be deducted. · ALL character strings must be enclosed in single quotes. This includes alpha strings and
  • 53. alphanumeric (remember that any formatting within a numeric string makes it alphanumeric). · If you are inserting a NULL, do not enclose the word NULL in single quotes, as this will insert the word NULL into the row. To insert a null you simply use the word NULL. Deliverables The deliverable for this lab will include the following documents. 1. Your script file. Create this file in Notepad, or another PURE TEXT editor—NOT Word. Make sure your name is in a comment area at the top of the script file. Use a double dash to create a one- line comment. –Jane Smith –Lab 3 2. Your script file must execute without error. It is recommended that you begin early in the week, and post any questions to the Q & A discussion in order to produce a working script by the due date. Be sure your name is on all documents and that all documents have been included in a single zip file for this week’s assignments.
  • 54. Refer to the following ERD in constructing your solution. Student PKStudent_ID Salutation First_Name Last_Name Street_Address Phone Employer Registration_Date FK1Zip Enrollment PK,FK1Section_ID PK,FK2Student_ID Enroll_Date Final_Grade LAB STEPS STEP 1: The DROP Statements A DROP TABLE statement must appear in your script file, prior to the SQL statements for creating
  • 55. the table in question. This will allow you to run and re-run your script file as often as you need to. The very first time you run your script the table does not exist, so the IF EXISTS clause causes the statement to be ignored. Thereafter, the table will be deleted, ensuring that your CREATE TABLE statement creates the table fresh and clean, with only the attributes present in the current revision of the CREATE statement. Here is an example of one of the six DROP TABLE statements you will need to create. DROP TABLE IF EXISTS `ENROLLMENT` ; STEP 2: The CREATE TABLE Statements Next, define the CREATE TABLE statements for the six tables that you are to create based upon the ERD (provided above) for this lab. Be sure to follow the guidelines given above on how and where to create the different types of constraints for each table. This will include PK, FK, and NOT NULL constraints. STEP 3: The INSERT Statements for the Data The third step is to create the insert statements to insert the sample data into the tables created in Step 2. The data for each table is contained in text files, named for the table whose data it contains.
  • 56. Modify the format of the data (e.g., date formats and add or eliminate quote marks) as needed to craft your insert statements, but do not change the inherent value of the data. STEP 4: The SELECT Statements The next step of the lab will be to create the select statements to verify the data was inserted correctly. You should have six select statements; one for each table. The command is SELECT * FROM Table_Name; For example, to select all columns from the Student table, the command would be SELECT * FROM student; Be sure to save all of the above statements in your script file. STEP 5: Testing and Verifying Your Script Now we come to the point of verifying that your script file works by creating all of the tables and inserting and selecting all of the data. Your script should execute without errors, and select the entire contents of each table in turn. Inspect your query results to ensure that each column and row from each of the tables is as expected. Correct and repeat testing of your script until no errors occur, and the results match expectations. You may also use the DESCRIBE command to display the table structure of
  • 57. each table, and verify that PK and NULL constraints have been properly created. The SHOW CREATE TABLE statement is useful for displaying the SQL that would regenerate a given table, which is a useful way for checking that FKs have been properly created. Examples: DESCRIBE STUDENT; SHOW CREATE TABLE STUDENT; This is the end of Lab 3_____ ============================================== CIS 336 iLab 4 Introduction to Select, Insert, Update, and Delete Statements (only SQL Command, No output) FOR MORE CLASSES VISIT www.cis336study.com CIS336: Lab 4: Introduction to Select, Insert, Update, and Delete Statements LAB OVERVIEW
  • 58. Lab 4 will introduce the various aspects of the SQL select statement and the methods of retrieving data from the database tables. This lab will also introduce the fundamentals of updating and deleting records. This lab may be completed using either DeVry’sOmnymbus EDUPE- APP lab environment, or a local copy of the MySQL database running on your own computer using the OM database tables. The lab will utilize a set of tables that are represented by the ERD (OM_ERD.docx) and are created and populated by the script file (create_OM_db.sql). Follow the instructions in the file CreateOMTables.docx to create your database, tables, and data. A few IMPORTANT things to note if using EDUPE MySQL: **There can be NO SPACES in alias names given to a column. For example: Select unit_price as “Retail Price “ from items; –this does NOT work in EDUPE MySQL. Any of the following WILL WORK: Select unit_price as “RetailPrice” from items; Select unit_price as “Retail_Price” from items; Select unit_price as Retail_Price from items; Select unit_price as RetailPrice from items; **Any calculated fields MUST be given an alias (and note above NO SPACES in alias). For example: select unit_price * 2 from items; –this does NOT work in EDUPE MySQL This will work:
  • 59. select unit_price * 2 as NewPrice from items; Deliverables • Lab Report (Answer Sheet) containing both the student-created SQL command(s) for each exercise, and the output showing the results obtained. Be sure your name is on the file. LAB STEPS: Complete each of the exercises below. 1. Write a query that displays a list of all customers showing the customer first name, last name, and phone number. Sort the results by customer last name, then first name. 2. Write a query that displays each customer name as a single field in the format “firstnamelastname” with a heading of Customer, along with their phone number with a heading of Phone. Use the IN operator to only display customers in New York, New Jersey, or Washington D.C. Sort the results by phone number. 3. Write a query that will list all the cities that have customers with a heading of Cities. Only list each city once (no duplicates) and sort in descending alphabetical order. 4. Write a query that displays the title of each item along with the price (with a heading of Original) and a calculated field reflecting the price with a 25% discount (with a heading of Sale). Display the sale price with two decimal places using the ROUND function. Sort by price from lowest to highest. 5. Write a query that displays the customer_first_name, customer_last_name, and customer_city from the customers table. Use the LIKE operator to only display customers that reside in any zipcode beginning with 4.
  • 60. 6. Write a query that displays the order id and order date for any orders placed from March 1, 2014 through April 30, 2014. Do this WITHOUT using the BETWEEN clause. Format the date field as Month dd, yyyy and use a heading of “Ordered”. 7. Write a query that displays the order id and order date for any orders placed during the month of May, 2014. Do this using the BETWEEN clause. Format the date field as mm/dd/yy and use a heading of “Ordered”. 8. Write a query which displays the order id, customer id, and the number of days between the order date and the ship date (use the DATEDIFF function). Name this column “Days” and sort by highest to lowest number of days. Only display orders where this result is 15 days or more. 9. Write a query which displays the order id, customer id and order date for all orders that have NOT been shipped, sorted by order date with the most recent order at the top. 10. The Marketing Department has requested a new report of shipped orders for which the order was placed on either a Saturday or a Sunday. Write a query which displays the order id, order date, shipped date, along with a calculated column labeled “Order_Day” showing the day of the week the order was placed (use the DAYNAME function). Only display orders that have shipped and were placed on a Saturday or Sunday. Sort by order date with most recent orders at the top. 11. Write a query to display the customer last name, phone number, and fax number but only display those customers that have a fax number.
  • 61. 12. Create a statement to insert a new record into the items table with the following values: item_id: 11 title: Ode To My ERD Artist_id: 15 unit_price: 12.95 Show your INSERT statement along with the results of the following SELECT query to verify that the insert worked correctly. select * from items where item_id> 10; 13. Create a statement to update the record inserted in the previous step to change the unit price of this item to 7.95. item_id: 11 title: Ode To My ERD artist: 15 unit_price: 7.95 Show your UPDATE statement along with the results of the following SELECT query to verify that the insert worked correctly. select * from items where item_id> 10; 14. Create a statement to delete the entire record that was inserted and then updated in the previous steps. Show your DELETE statement along with the results of the following SELECT query to verify that the insert worked correctly. select * from items where item_id> 10;
  • 62. 15. Using the SUBSTRING and CONCAT functions, write a query to display each customer name as a single field in the format “Jones, Tom” with a heading of Customer along with the customer_phone field in a nicely formatted calculated column named Phone. For example, a record containing the customer_phone value 6145535443 would be output with parentheses, spaces, and hyphens, like this: (614) 555-5443.Sort by last name. This is the end of Lab 4. ============================================== CIS 336 iLab 5 Joining Tables FOR MORE CLASSES VISIT www.cis336study.com CIS336: Lab5: Joining Tables LAB OVERVIEW Scenario and Summary Lab 5 will introduce the concept of multi-table JOINS in order to work with data in two or more related tables simultaneously. This lab may be completed using either DeVry’sOmnymbus EDUPE-APP lab environment, or a local copy of the MySQL database running on your own computer using the OM database tables. The lab will utilize a set
  • 63. of tables that are represented by the ERD (OM_ERD.docx) and are created and populated by the script file (create_OM_db.sql). Follow the instructions in the file CreateOMTables.docx to create your database, tables, and data. A few IMPORTANT things to note if using EDUPE MySQL: **There can be NO SPACES in alias names given to a column. For example: Select unit_price as “Retail Price “ from items; –this does NOT work in EDUPE MySQL. Any of the following WILL WORK: Select unit_price as “RetailPrice” from items; Select unit_price as “Retail_Price” from items; Select unit_price as Retail_Price from items; Select unit_price as RetailPrice from items; **Any calculated fields MUST be given an alias (and note above NO SPACES in alias). For example: select unit_price * 2 from items; –this does NOT work in EDUPE MySQL This will work: select unit_price * 2 as NewPrice from items; Deliverables • Lab Report (Answer Sheet) containing both the student-created SQL command(s) for each exercise, and the output showing the results obtained. Be sure your name is on the file.
  • 64. LAB STEPS: Complete each of the exercises below: 1. Use the JOIN ON syntax to write a query to display the order id, order date, customer name formatted as a single field (i.e. “Tom Jones”) with a heading of Customer, and customer_city for customers residing in the state of OHIO. Sort the output to display the newest orders first. 2. Use the JOIN USING syntax to display the order_id, order date, and shipdate for orders to Karina Lacy that have shipped. 3. Use the implicit join syntax (the WHERE clause) to display the last name, city, order date and ship date for all orders shipped in 2012. 4. Use any join syntax EXCEPT NATURAL JOIN to list the customer_first_name and customer_last_name concatenated with an intervening space as Customer, customer city and state formatted as a single column in the format of “city, ST” with a heading of Location, order_id and order date for orders that have not shipped. 5. List the customer name, order date, zipcode for any customer(s) placing an order for the item titled ‘Etcetera”. 6. Write a query to list the title and artist of ONLY the items that have been ordered. Only list each title once. 7. Write a query to list the title and price of all items that have been ordered by customer Millerton. 8. Write a query to list the last name and order id of customers that ordered any items by the artist Burt Ruggles? 9. Write a query to display a list of titles along with the artist name., sorted by artist name.
  • 65. 10. Write a query to display an invoice for order 693 including the title, quanty, price, and a calculated column to display the line item subtotal (quantity times price) with a heading of Subtotal. 11. Display the order id, last name, title , and quantity for any items where customers have ordered 2 or more of a particular item in an order. 12. The employees table contains a list of employees of a company. An employee may be managed by another employee. To denote an employee’s manager, the employee_id of the manager is entered into the manager_id field of the employee reporting to that manager. In order to produce a list of which managers supervise which employees, the table may be joined to itself using these two attributes (employee_id, manager_id). This is known as a SELF-JOIN. Use a SELF-JOIN on the employees table to produce a result containing two columns: the concatenated last_name and first_name of the manager, and the concatenated last_name and first_name of the employee. Label the first-column supervisor, and the second-column employee. Order the output by the supervisor’s last_name and first_name. 13. Write a query to display the order id, order date, ship date, and customer last name for all SHIPPED orders placed on the internet (no employee id). Show the most recently shipped orders first. 14. Write a query that displays the order id, order date, and employee name as a single field labeled Employee for each order that an employee assisted with. 15. Write a query that displays the order id, order date, customer name as a single field labeled Customer for all orders for the sales rep Thomas Hardy, sorted by customer last name.
  • 66. This is the end of Lab 5. ============================================== CIS 336 iLab7 Working with Views FOR MORE CLASSES VISIT www.cis336study.com CIS-336: Lab7: Working with Views LAB OVERVIEW Lab 7 will introduce the concept of database views. This lab may be completed using either DeVry’sOmnymbus EDUPE- APP lab environment, or a local copy of the MySQL database running on your own computer using the OM database tables. The lab will utilize a set of tables that are represented by the ERD (OM_ERD.docx) and are created and populated by the script file (create_OM_db.sql). Follow the instructions in the file CreateOMTables.docx to create your database, tables, and data. A few IMPORTANT things to note if using EDUPE MySQL:
  • 67. **There can be NO SPACES in alias names given to a column. For example: Select unit_price as “Retail Price “ from items; –this does NOT work in EDUPE MySQL. Any of the following WILL WORK: Select unit_price as “RetailPrice” from items; Select unit_price as “Retail_Price” from items; Select unit_price as Retail_Price from items; Select unit_price as RetailPrice from items; **Any calculated fields MUST be given an alias (and note above NO SPACES in alias). For example: select unit_price * 2 from items; –this does NOT work in EDUPE MySQL This will work: select unit_price * 2 as NewPrice from items; Deliverables • Lab Report (Answer Sheet) containing both the student- created SQL command(s) for each exercise, and the output showing the results obtained. Be sure your name is on the file. LAB STEPS: Complete each of the exercises below.
  • 68. 1. Use an ALTER TABLE statement to update the customers table so that the Primary Key field is an auto- increment field, then create TWO insert statements to test proper operation, using your own first and last name for one (and a name of your choice for the second one), and any data you care to imagine for the remaining fields. IMPORTANT NOTE: When using a LOCAL copy of MySQL, if you attempt to simply issue the ALTER TABLE command you have composed by itself, you should receive an error similar to the following (try it for yourself!). ERROR 1833: Cannot change column ‘customer_id’: used in a foreign key constraint ‘orders_fk_customers’ of table ‘om.orders’ (Note – EDUPE will not give this error message, however you should still follow the CORRECT procedure as discussed here to complete this problem). The reason for this is that you are attempting to alter data in one column that has a defined PK:FK relationship to a field in another table. Referential Integrity rules prevent this. So, how do you resolve such a problem? One approach to solving this dilemma is to turn off the foreign key checks that implement referential integrity rules. However, the danger here is that other users and processes operating on the database while these constraints are suspended could create or modify data in a way that
  • 69. compromises integrity. We can solve this second problem by preventing other users and processes from altering the data in the table in which we are working until we have turned the foreign key checks back on. We therefore need to construct a script that does the following. a) Locks the customer table – lock table customers write; b) Turns off FK checks – set foreign_key_checks = 0; c) Alters the table to add the auto_increment feature to the PK field d) Turns FK checks back on – set foreign_key_checks = 1; e) Unlocks the customer table – unlock tables; It is VERY important to consider that altering tables can require a bit of time for very large tables, and that while the table is locked, other users and processes cannot operate. Consequently, this kind of modification should not be done during peak operating hours in a production operation (as a student in a lab exercise, working on your own database, you may do this at any time) but ideally in hours during which the business does not normally operate. In cases where round-the-clock, high availability of a database is required, other approaches may be required. Addressing this problem in a high-availability, high-demand environment is an advanced topic, study of which is outside the scope of this course. Use the outline below to construct your script. Show
  • 70. all commands in your answer sheet along with the output of the commands. lock table customers write; set foreign_key_checks = 0; – Replace this comment with your ALTER TABLE command to add the auto_increment feature to the PK field set foreign_key_checks = 1; unlock tables; –statements to insert two rows into the table –verify auto_increment with a select statement 2. The Vice President of Marketing for your firm wants the firm’s sales representatives to be able to directly view and edit customer details, but only for the state to which a particular sales representative is assigned. You have suggested that this need can be addressed with a view. For example, a view could be created for one particular state, and user account permissions for accessing that view granted only to sales representatives from that state. The VP has asked you to quickly create a simple proof-of-concept demonstrating how this might work. Complete the following steps:
  • 71. a. Construct a view on the customers table called CA_CUSTOMERS that consists of all data about customers that live in California. b. Display the data using this view to verify that only customers that reside in California are visible. c. Prove that It is possible to add or update records through this view by updating the record for Karina Lacy to change the spelling of Karina’s last name to Lacie. d. Display the data using the customer table to verify that the change has been made. Show all commands in your answer sheet along with the output of the commands. 3. The Senior Customer Service Manager has requested the ability to create a report at any time that will show shipped orders that took some specified number of days to fulfill. a. Create a view named SHIPPING_TIME that lists only customer_first_name, customer_last_name, order_date, shipped_date, and the calculated field days_to_fulfill (use the DATEDIFF function) showing the number of days between when the customer placed the order and when it was shipped. Show the data from this view. Now let’s do some queries by adding sorting and filters USING THIS VIEW, WITHOUT CHANGING IT.
  • 72. b. Use the view to display the data sorted by highest to lowest days to ship c. Use the view to display only the orders that took less than 10 days to ship. d. Use the view to display only the orders that took more than 30 days to ship. 4. Queries that require joins and aggregate functions can be easier to construct when using a view as a “temporary” table. Consider a report to show total sales by artist. a. First create a view called SalesData that displays the order_id, item_id, the calculated field ItemTotal (which is quantity times price), the title and artist_id. b. Display the data in the SalesData view sorted by artist_id. Does this help you to “visualize” how to group the data to create the totals? c. Create a query USING THIS VIEW and the appropriate aggregate function to display artist_id and the total sales for each artist. d. Now join to the artist table in order to display the artist_name along with the total sales. 5. Now use this same method to display the total sales per customer.
  • 73. a. Create a view called SalesData with the appropriate data. At a minimum you will need customer_id and the calculated item total. DO NOT use the customer table in this view, it will be joined later. b. Display the data in your view sorted by customer_id. Does this help you to “visualize” how to group the data to create the totals? c. Create a query USING THIS VIEW and the appropriate aggregate function to display customer_id and the total sales for each customer. d. Now join to the customer table in order to display the customer_name as a single field named Customer along with the total sales. Sort the report by Total sales in descending order. This is the end of Lab 7. ============================================== CIS 336 Quiz 1 (Devry) FOR MORE CLASSES VISIT www.cis336study.com
  • 74. (TCO 3) Normalization works through a series of stages called normal forms. Typically _________ stages must be completed before a table can be considered normalized. (TCO 3) The conflicts between design efficiency, information requirements, and processing speed are often resolved through (TCO 3) The PK must uniquely identify each entity instance. A primary key must be able to guarantee unique values. It cannot contain nulls. This rationale belongs to (TCO 9) The SQL command that lets you insert data into a table, one row at a time, is _____________. (TCO 4) Which command is used to restore the table's contents to their default values? (TCO 4) Which of the following SQL commands would alter the table DEVRY and add a foreign key that references the CITY table? (TCO 4) The SQL command that lets you save your work to disk, is ___________
  • 75. (TCO 9) If the INSERT INTO command is used to insert data values that violate an existing constraint in a table, which of the following will happen? (TCO 3) Explain under what circumstances a partial dependency can exist in a database. ============================================== CIS 336 Quiz 2 (Devry) FOR MORE CLASSES VISIT www.cis336study.com (TCO 2) Explain what a composite attribute is (TCO 1) Data constitutes the building blocks of (TCO 1) Successful database design is first and foremost based on _____________ requirements.
  • 76. (TCO 1) The lowest level in a database hierarchy is the ____________ or value as it is often referred (TCO 2) The term _____________ design is used to refer to the task of creating the conceptual data model represented by an Entity Relationship Diagram (ERD). (TCO 2) Within a table, the primary key must be unique so that it will identify each row. When this is the case, the table is said to exhibit ___________. (TCO 2) A field that consists of data values that can be used for arithmetic procedures is a _________ type field. (TCO 2) A relationship is an association between ___________ (TCO 5) The _____________ model represents a global view of the data. (TCO 5) In Crow's Foot notation, a forked end means ============================================== CIS 336 Quiz 3 (Devry)
  • 77. FOR MORE CLASSES VISIT www.cis336study.com (TCO 7) Which of the following types of columns will automatically right-align the data when it is displayed? (TCO 7) Which of the following SQL statements will display the profit generated by each book currently stored in the BOOKS table? (You do not need to see the table structure for this question) (TCO 7) Which of the following will display the new retail price of each book as 20 percent more than it originally cost? (TCO 7) Which of the following operators would be most appropriate to determine whether or not the retail price of a book is at least $24.00? (TCO 7) The ______________________ comparison operator is used to indicate that a data value must fall within a range of values to be included in the query results.
  • 78. (TCO 7) Based upon the contents of the BOOK_ORDER table shown below, which of the following queries will display all orders that were not shipped for at least three days after the order was received? (TCO 7) ANSI-standard SQL allows the use of a special operator in conjunction with WHERE clause. A special operator used to check whether an attribute matches one from a subquery is_______. (TCO 7) A ____ occurs when a relationship is improperly or incompletely identified and, therefore, is represented in a way that is not consistent with the real world. (TCO 7) The ______________________ comparison operator is used to search for values which are not NULL. TCO 7) You want to write a query that will return the customer number, first and last name from the book_order table (shown below) for all customers who have a P.O. Box and who live in either Trenton or Chicago. Write the query that will accomplish this task. ============================================== CIS 336 Quiz 4 (Devry) FOR MORE CLASSES VISIT www.cis336study.com
  • 79. (TCO 8) If a Cartesian join is used to link table A which contains five rows to table B which contains eight rows, there will be _______ rows in the results. (TCO 8) Which of the following statements will produce the value 21.1? (TCO 8) Which of the following format elements will display insignificant leading zeros? (TCO 8) Oracle’s pseudo table used only for cases where a table is not really needed is _________? (TCO 7) Using the BOOK_CUSTOMER and BOOK_ORDER tables shown below for reference which SQL statement will return the same results as the following SQL statement? (TCO 7) A table alias or qualifier cannot be assigned in the FROM clause of which type of join? (TCO 7) The _______ query joins a table to itself using aliases to distinctly identify each instance of the table. (TCO 7) Explain the difference between an inner join and an outer join. ==============================================
  • 80. CIS 336 Quiz 5 (Devry) FOR MORE CLASSES VISIT www.cis336study.com (TCO 6) Which of the following keywords is used to remove a row in a table? (TCO 6) When using the ALTER TABLE...DROP COLUMN command, which of the following is NOT correct? (TCO 6) Which of the following commands will add a new column named FIRSTORDERDATE to the CUSTOMERS table to store the date that the customer first placed an order with the company? (TCO 8) Which of the following is NOT a valid statement? (TCO 8) Based on the contents of the BOOKS table shown below, which of the following SQL statements will return the total profit generated by books in the COOKING category?
  • 81. (TCO 8) Which comparison operator evaluates a subquery and if it returns false, will not execute the calling query? (TCO 8) The following SQL statement contains which type of subquery? (TCO 9) If the _________ clause of the UPDATE command is omitted, then all the rows in the specified table will be changed. (TCO 9) Which of the following is not a valid SQL command? (TCO 9) Based on the contents of the PROMOTION table, which of the following commands will delete only the row for the Free Bookmark from the table? (TCO 8) In using group functions we cannot place a group function in a WHERE clause. Explain how the WHERE clause and HAVING clause similar and why you can use the HAVING with a group function but not a WHERE clause. ============================================== CIS 336 Week 2 Quiz (New) FOR MORE CLASSES VISIT www.cis336study.com
  • 82. Question 1. (TCO 1) Raw facts, such as a telephone number, a birth date, and a customer name, are also referred to as _____ Question 2. (TCO 1) The DBMS allows you to extrapolate information from your data by using a _____ Question 3. (TCO 1) A database row (record) consists of _____ Question 4. (TCO 2) In Oracle, a _____ is automatically constrained to be unique and not null. Question 5. (TCO 2) A verb associating two nouns in a business rule usually translates to a(n) ___ in the data model. Question 6. (TCO 2) In a relationship, when a primary key from one table is also defined in a second table, the field is referred to as a _____ in the second table. Question 7. (TCO 2) In a relational database, each table must have _____
  • 83. Question 8. (TCO 5) The product of a logical model is the entity relationship diagram, also known as a _____ ============================================== CIS 336 Week 3 Quiz (New) FOR MORE CLASSES VISIT www.cis336study.com Question 1. (TCO 3) When designing a database, you should _____ Question 2. (TCO 3) A table that is in 1NF and includes no partial dependencies only is said to be in _____ Question 3. (TCO 3) (TCO 3) A table is not in 1NF if _______________. Question 4. (TCO 9) All of following are examples of DML commands except _____
  • 84. Question 5. (TCO 4) Which of the following is not considered a database object? Question 6. (TCO 4) In Oracle, the DEFAULT constraint is used to _____ Question 7. (TCO 4) The SQL command that lets you save your work to disk, is _____ Question 8. (TCO 9) Which of the following SQL statements would insert a line of data into the DEVRY table and supply a NULL value for the Student_city column? ============================================== CIS 336 Week 4 Quiz (New) FOR MORE CLASSES VISIT www.cis336study.com
  • 85. Question 1. (TCO 7) Which of the following types of columns will automatically right-align the data when it is displayed? Question 2. (TCO 7) Which of the following symbols can be used to denote that any and all characters following the sign are eligible when used with LIKE? Question 3. (TCO 7) Based upon the contents of the BOOKS table shown below, which of the following is a valid SQL statement? Question 4. (TCO 7) Which of the following operators would be most appropriate to determine whether or not the retail price of a book is at least $24.00? Question 5. (TCO 7) Based upon the contents of the BOOK_ORDER table shown below, which of the following SQL statements will list all orders placed by customer# 1020 that have not yet been shipped?
  • 86. Question 6. (TCO 7) Based upon the contents of the BOOK_ORDER table shown below, which of the following queries will display all orders shipped between April 4, 2003 and April 5, 2003? Question 7. ((TCO 7) The ____ comparison operator is used to search for values that are not NULL. Question 8. (TCO 7) You want to write a SQL query that lists all employees in the EMP table whose last names in the EMP_LNAME column start with Smith, including values such as Smithfield. What is the correct statement? ============================================== CIS 336 Week 5 Quiz (New) FOR MORE CLASSES VISIT www.cis336study.com Question 1. (TCO 8) The ____ set operator in SQL combines rows from two queries and returns only the values that are common between the two sets.
  • 87. Question 2. (TCO 8) Which SQL function converts a value to a particular string format? Question 3. (TCO 8) Based upon the contents of the BOOK_ORDER table shown below, which of the following SQL statements will display only those orders shipped to the zip code zone that begins with 323? Question 4. (TCO 8) Oracle’s pseudo table used only for cases where a table is not really needed is _____ Question 5. (TCO 7) Using the BOOK_CUSTOMER and BOOK_ORDER tables shown below for reference, which SQL statement will return the first and last name of each customer who's order has not yet shipped? Question 6. (TCO 7) A table alias or qualifier cannot be assigned in the FROM clause of which type of join?
  • 88. Question 7. (TCO 7) A(n) ____ join returns not only the rows matching the join condition (that is, rows with matching values in the common columns) but also the rows with unmatched values. Question 8. (TCO 7) Which statement will display the date in this format: ============================================== CIS 336 Week 6 Quiz (New) FOR MORE CLASSES VISIT www.cis336study.com Question 1. (TCO 6) Which of the following keywords can be used to change the size, datatype, or default value of an existing column?
  • 89. Question 2. (TCO 9) If the _____ clause of the UPDATE command is omitted, then all the rows in the specified table will be changed. Question 3. (TCO 6) Which of the following commands will increase the size of the CITY column in the CUSTOMERS table from 12 to 20 and increase size of the LASTNAME column from 10 to 14? Question 4. (TCO 8) Based upon the contents of the BOOKS table shown below, which of the following SQL statements will return the number of different categories contained in the table? Question 5. (TCO 9) Which of the following is not a valid SQL command? Question 6. (TCO 8) Based on the contents of the BOOKS table shown below, which of the following SQL
  • 90. statements will return the total profit generated by books in the COOKING category? Question 7. (TCO 8) Before the COMMIT command is used, you can retrieve deleted records by using the _____ command. Question 8. (TCO 8)Based on the contents of the BOOK_ORDER table shown below, which of the following SQL statements will list the order number and customer number for the most recent orders in the system? Question 7. (TCO 8) Before the COMMIT command is used, you can retrieve deleted records by using the _____ command. Question 8. (TCO 8)Based on the contents of the BOOK_ORDER table shown below, which of the following SQL statements will list the order number and customer number for the most recent orders in the system?
  • 91. ============================================== CIS336 iLab 6 Group Functions and Subqueries FOR MORE CLASSES VISIT www.cis336study.com CIS336: Lab 6: Group Functions and Subqueries LAB OVERVIEW Scenario and Summary Lab 6 will introduce the concept of group functions and subqueries to meet more complex report requirements. This lab may be completed using either DeVry’sOmnymbus EDUPE-APP lab environment, or a local copy of the MySQL database running on your own computer using the OM database tables. The lab will utilize a set of tables that are represented by the ERD (OM_ERD.docx) and are created and populated by the script file (create_OM_db.sql). Follow the instructions in the file CreateOMTables.docx to create your database, tables, and data. A few IMPORTANT things to note if using EDUPE MySQL: **There can be NO SPACES in alias names given to a column. For example:
  • 92. Select unit_price as “Retail Price “ from items; –this does NOT work in EDUPE MySQL. Any of the following WILL WORK: Select unit_price as “RetailPrice” from items; Select unit_price as “Retail_Price” from items; Select unit_price as Retail_Price from items; Select unit_price as RetailPrice from items; **Any calculated fields MUST be given an alias (and note above NO SPACES in alias). For example: select unit_price * 2 from items; –this does NOT work in EDUPE MySQL This will work: select unit_price * 2 as NewPrice from items; Deliverables • Lab Report (Answer Sheet) containing both the student-created SQL command(s) for each exercise, and the output showing the results obtained. Be sure your name is on the file. LAB STEPS: Complete each of the exercises below. 1. Write a query to determine the total number of items on each order. Display the order_id and the total with a heading of TotalItems (note no spaces). Filter to only display information for order_id of 600 or higher. 2. Re-do query 1 but filter to only show those orders with more than 2 items ordered. Sort by the number of items ordered, lowest to highest.
  • 93. 3. The order_details table has a quantity for each item ordered. Show the total amount charged for each item on the order (quantity times price). Display order_id, the item id, the unit price, the quantity times price of the item labeled as “Itemtotal” (note NO spaces). Sort by order id and filter to only display those order ids between 400 and 700. 4. Write a query to display the total amount for each order: show the order id and total. Sort by descending order on the total and only display orders with a total of $40 or more. 5. Re-do query 4 but show the customer name for each order (formatted as a single field with heading of Customer) along with the city, order id and total. Filter to only display customers that live in California. Sort by city. 6. Display the total amount of sales per item. Show title, total quantity sold with a heading of Quantity, total sales with a heading of “TotalSales” (not NO space). Sort by highest to lowest total. 7. Display the total sales for each customer: show customer name (as single field) with a heading of Cutomer and total. Sort lowest to highest total. Filter to only display customers with $50 or more in total orders. 8. Use subqueries to determine which (artist) had the item ordered in highest quantity on an order? First determine the highest quantity on any order, then determine the item number associated with it, then display the artist. 9. Display the total sales by artist: show artist name, total. Sort highest to lowest. 10. USE A SUBQUERY to Increase price of all items by ‘No Rest for the Weary’ by 10%. If working in MySQl you will need to disable safe mode. Show prices before and after. Rollback after.
  • 94. 11. USE A SUBQUERY to display names of customers that have unshipped orders. 12. Display the total amount of sales made to customers in NY 13. USE A SUBQUERY to list the items (title and artist) of items that have never been ordered 14. Show the order history for Samuel Jacobsen. Display the order id, order date, ship date, and total. 15. Show the total amount of sales per sales rep. Display the employee name as a single field along with the total sales, sorted by highest to lowest sales. This is the end of Lab 6. =========================================== ===