MIS407: Database Concepts

advertisement
MIS407: Database Concepts
Credit Hours:
3
Contact Hours:
This is a 3-credit course, offered in accelerated format. This means that 16 weeks of
material is covered in 8 weeks. The exact number of hours per week that you can
expect to spend on each course will vary based upon the weekly coursework, as
well as your study style and preferences. You should plan to spend 10-25 hours per
week in each course reading material, interacting on the discussion boards, writing
papers, completing projects, and doing research.
Faculty Information
Name:
Phone:
CSU-GC Email:
Virtual Office Hours:
Course Description and Outcomes
This course covers the basics of relational databases, including basic terminology and concepts, database
integrity, and normalization. The relational model will be examined in detail in order to appreciate database
structure, integrity, and manipulation. Current relational database management systems will be explored and
contrasted, as will basic relational database design and SQL programming.
Course Learning Outcomes:
1. Describe the basic data structure, integrity, and manipulation components of Dr. Codd’s relational
model and their relationship to database tables.
2. Describe the importance of primary keys, foreign keys, and other key types.
3. Describe the eight basic relational algebra operations and how they relate to SQL.
4. Design a simple relational database from a set of user requirements using an ERD (entity/relationship
diagram) and then use it to develop table specification metadata.
5. Utilize graphical features and basic SQL statements in order to create relational database tables,
populate them, and query them.
6. Utilize SQL to perform more advanced SQL queries and reports.
7. Describe the role of embedded SQL in developing enterprise database applications.
8. Using the concepts of functional dependency and normalization, perform 1NF (first normal form), 2NF
(second normal form), and 3NF (third normal form) normalization to remove redundant data.
9. Study and contrast the current popular desktop and enterprise relational database management
systems (RDBMSs).
10. Describe how online transaction processing (OLTP) and data warehousing relational databases are used
for client/server databases, Web based E-commerce systems, service-oriented architectures (SOAs),
online analytical processing (OLAP), and data mining.
Participation & Attendance
Prompt and consistent attendance in your online courses is essential for your success at CSU-Global Campus.
Failure to verify your attendance within the first 7 days of this course may result in your withdrawal. If for some
reason you would like to drop a course, please contact your advisor.
Online classes have deadlines, assignments, and participation requirements just like on-campus classes. Budget
your time carefully and keep an open line of communication with your instructor. If you are having technical
problems, problems with your assignments, or other problems that are impeding your progress, let your
instructor know as soon as possible.
Course Materials
Required:
Kroenke, D. M. & Auer, D. (2013). Database processing: Fundamentals, design, and implementation (13th ed.).
Upper Saddle River, NJ: Pearson. ISBN: 9780133058352
**All non-textbook required readings and materials necessary to complete assignments, discussions, and/or
supplemental or required exercises will be provided within the course itself. Please read through each course
module carefully.
Course Schedule
Due Dates
The Academic Week at CSU-Global begins on Monday and ends the following Sunday.
 Discussion Boards: The original post must be completed by Thursday at 11:59 p.m. MT and Peer
Responses posted by Sunday 11:59 p.m. MT. Late posts may not be awarded points.
 Mastery Exercises: Students may access and retake mastery exercises through the last day of class
until they achieve the scores they desire.
 Critical Thinking Activities: Assignments are due Sunday at 11:59 p.m. MT.
Week #
Readings
Chapters 1 , 2, 10, 10A, & 10B in Database Processing



Discussion (25 points)
Mastery (10 points)
Critical Thinking (50 points)
Chapter 3 (pp. 131-151) and Appendix A in Database Processing



Discussion (25 points)
Mastery (10 points)
Critical Thinking (60 points)
Chapter 5 in Database Processing



Discussion (25 points)
Mastery (10 points)
Critical Thinking (60 points)
Chapters 6, 10, 10A, 10B, & Appendices C, D, H in Database
Processing


Discussion (25 points)
Mastery (20 points)
Chapter 7 and 8 in Database Processing



Discussion (25 points)
Mastery (10 points)
Critical Thinking (60 points)
Chapters 8 and Appendix A in Database Processing



Discussion (25 points)
Mastery (10 points)
Critical Thinking (60 points)
Chapters 3 and 4 (pp. 160-172) in Database Processing



Discussion (25 points)
Mastery (10 points)
Critical Thinking (60 points)
Chapters 9, 11, & 12 in Database Processing



Discussion (25 points)
Mastery (20 points)
Portfolio (350 points)
1
2
3
4
Assignments
5
6
7
8
Assignment Details
This course includes the following assignments/projects:
Module 1
Critical Thinking Activity: RDBMS Comparison Paper (50 points)
Compare the capabilities of the Microsoft Access, Microsoft SQL Server, Oracle’s MySQL, and Oracle relational
database management systems (RDBMSs). Your paper should discuss the processing speeds, data storage
capabilities, maximum users supported, platforms supported, user interfaces, development tools, vendor support,
and cost.
Discuss and cite at least two references in addition to our textbook. Your paper should be 3-5 pages in length
(excluding title and References pages), well written, and formatted in conformity with CSU-Global guidelines for
APA style.
Module 2
Critical Thinking Activity: Creating Tables with Microsoft Access (60 points)
Create an Access database with two tables using the graphical capabilities of the product (vs. SQL). One table is
called STUDENTS and has fields for Student_ID, Last_Name, First_Name, Major, DOB (i.e., date of birth), Zip_Code,
and GPA. The other table is called ZIP_CODES and has fields of Zip_Code, City, and State. Use appropriate Access
data types for all fields. Ensure both tables have primary keys and there is a foreign key in the STUDENTS table
referencing the Zip_Code field in the ZIP_CODES table. Populate each table with two records, ensuring that each
student has a zip code that matches a value in the ZIP_CODES table. Develop a query that shows the Student IDs
of both students along with their last names, first names, date of birth, GPAs, zip codes, cities, and states.
Submit the following screen snapshots, in this order and appropriately labeled, in a single Word file:
1.
2.
3.
4.
5.
6.
Relationships View showing both related tables
Table Design Views of both tables
Datasheet Views of both tables showing the two records
Query Design View of your query
SQL View of your query
Datasheet View of the query results
At the top of your Word file, include the title of this Critical Thinking assignment, your name, and the date.
Screen snapshots can be made by hitting the PrtScrn button on the keyboard and then pasting the captured image
into Word. You can use Alt-PrtScrn to capture a single window of interest vs. the entire display on the monitor.
Module 3
Critical Thinking Activity: Relational Database Design (60 points)
You are tasked to develop a database design for a retail company that involves shipping orders to customers.
Order data includes an order date, a ship date, the one or more items on each order identified by a unique ID, the
quantities of each item in the order, the order amount (total per item and per order), and the customer to whom
the order is shipped. Customer data includes a unique customer ID, customer name, and address. Items in the
inventory have a unique item ID, description, and unit cost.
Identify and describe each entity for this application and the attributes of each entity.
Develop relationship sentence pairs for each pair of related entities.
Develop a Visio ERD using crow’s feet notation based on your relationship sentence pairs.
Submit the following screen snapshots, in this order and appropriately labeled, in a single Word file:
1) Your entity descriptions and the attributes for each entity
2) Your relationship sentence pairs
3) Your Visio ERD (take a screen snapshot from Visio and paste into your Word file)
At the top of your Word file include the title of this Critical Thinking assignment, your name, and the date.
Screen snapshots can be made by hitting the PrtScrn button on the keyboard and then pasting the captured image
into Word. You can use Alt-PrtScrn to capture a single window of interest vs. the entire display on the monitor.
Module 5
Critical Thinking Activity: Creating, Populating, and Querying Tables (60 points)
Using your ERD from the Module 3 CT assignment, along with any design changes you wish to make, develop a
spreadsheet of table specification metadata, in the format presented in Module 4, for the design of physical
relational database tables, their columns, and necessary integrity constraints.
Then, based on your table specification metadata and using your selected RDBMS from Module 4 (i.e., SQL Server,
Oracle, or MySQL) and DDL SQL (i.e. CREATE TABLE, DROP TABLE, and ALTER TABLE statements), develop an SQL
script file to create the corresponding relational database tables.
Then, using an SQL script file of DML SQL INSERT statements, populate each table with two rows of data.
Finally, using an SQL script file of SQL SELECT Oracle statements, perform queries to display all data in each table.
Submit your Excel spreadsheet of table specification metadata. Submit the following outputs of your SQL script file
processing, in this order and appropriately labeled, in a single Word file:
1) Your DDL SQL and results used to create your tables
2) Your DML SQL INSERT statements and results used to populate your tables
3) Your SQL SELECT statements and results showing the contents of each table
At the top of your Word file include your name, and the date.
Module 6
Critical Thinking Activity: Creating, Populating, and Querying Tables (60 points)
Enhance your Module 5 CT database table structures, via your selected RDBMS, as you wish.
Then, using SQL and an SQL script file, add at least 5 more rows of data to each of your tables.
Then, using SQL and an SQL script file, create and execute advanced queries of your choice that demonstrate each
of the following:
a)
b)
c)
d)
The use of a GROUP BY clause, with a HAVING clause, and one or more group functions
The use of UNION operator
The use of a subquery
The use of an outer join
Then create and execute at least one SQL UPDATE and at least one SQL DELETE query.
Finally, create and use an SQL view and in a SELECT query.
Submit the following outputs of your SQL script file processing, in this order and appropriately labeled, in a single
Word file:
1)
2)
3)
4)
The SQL and results of your INSERT statements to further populate your tables
The SQL and results of your 4 advanced SELECT queries
The SQL and results of your UPDATE and DELETE queries
The SQL and results of your view creation and its use in a SELECT query
At the top of your Word file include your name, and the date.
Module 7
Critical Thinking Activity: Normalization Exercise (60 points)
Examine the following relation and answer the following questions. Assume these are the values that exist for all
time (e.g., the toys shown always cost the amount shown) and that boys with the same name are the same person.
BOY
GROUP
AGE
TOY
CATEGORY
PRICE
Charlie
Jimmy
Robert
Jimmy
Jimmy
Charlie
Stewart
1.
2.
3.
4.
5.
6 year olds
5 year olds
6 year olds
5 year olds
5 year olds
6 year olds
5 year olds
6
5
6
5
5
6
5
Soccer ball
Hammer Tools
Baseball Sports
Soccer ball
Wrench
Baseball Sports
Oracle
Sports
Sports
Tools
Computer Software
18.44
7.99
8.99
18.44
6.99
8.99
399.99
Is this relation in at least 1NF? Why or why not?
Assuming the values shown are the only possible tuples for all time, what is the primary key of the initial
relation? Remember that a primary key must be unique and not null.
What normal form is this relation currently in?
Describe the specific modification anomalies that exist if we DELETE the tuple containing Stewart.
If necessary, decompose the initial relation into a set of non-loss 3NF relations by showing the relations,
attributes, and tuples. Show complete relations with attribute headings and all data values in the tuples
of your relations. Determine the number of 3NF relations you end up with after normalization, write this
number, and then circle the number.
At the top of your Word file include your name, and the date.
Module 8
Portfolio Project (350 Points)
You are a database consultant with Ace Software, Inc., and have been assigned to develop a database for the Mom
and Pop Johnson video store in town. Mom and Pop have been keeping their records of videos and DVDs
purchased from distributors and rented to customers in stacks of invoices and piles of rental forms for years. They
have finally decided to automate their record keeping with a relational database.
You sit down with Mom and Pop to discuss their business, and watch their operation for about a week. You
discover quickly that a video and a DVD are both copies of a movie kept in a separate plastic case that is rented
out. They have several copies of each movie they rent, therefore there are several videos and DVDs for each movie
title. You learn that in their inventory they have several thousand videos and DVDs, which they get wholesale from
about a half dozen distributors. The video and DVD prices to them are based on the quantity of their shipment and
the past business they have done with each company.
The price of a DVD for a movie might be different than the price of a video for the same movie, even from the
same distributor. Each distributor provides different types of movies (e.g., suspense, horror, mystery, comedy,
etc.). A single distributor may provide several different types of movies in both video and DVD format. It is possible
to obtain the same movie from multiple distributors and at different wholesale prices.
Each video and DVD has a unique identification number that Mom and Pop assign in their inventory, in addition to
the distributor's serial number for the item. Each movie also has a unique identification number Mom and Pop
assign in addition to the title and any movie IDs the distributors use in their electronic catalogs. Distributors
provide electronic catalogs to Mom and Pop, and the information from these catalogs must be included in the
database.
Mom and Pop need to record when a video or DVD is rented, when a video or DVD is returned, and all customer
charges such as late and damaged fees, failure to rewind fees, and taxes. They need a report of which videos are
returned late because there are standard and late charges. On occasion there are discount prices for certain
movies or types of movies. Customers want to rent movies based on actors or actresses, running length, type of
movie, rating, year released, the director, and the Academy Awards won (by the movie, the actors, the actresses
and/or the directors). Customers also want to know how many videos they have rented in the last month, year,
and so forth. Mom and Pop need to keep only basic information on customers in their database, such as name,
address, telephone numbers, etc.
There must be no limit to the number of video and/or DVD copies of a movie that Mom and Pop can have in their
inventory. Video/DVD ID numbers, movie ID numbers, and distributor ID numbers for videos, DVDs, and movies
are all different. Also, each movie must be able to have an unlimited number of actors, actresses, directors, and
Academy Awards (i.e., Oscars). Other types of awards (e.g., Golden Globe, People's Choice, etc.) are not of interest
for this application. The rental of equipment, sale of videos, DVDs, popcorn, etc., is not to be kept in the database.
1.
2.
3.
4.
5.
6.
7.
Identify and describe the entities and their attributes.
Develop relationship sentence pairs.
Draw an ERD with Visio.
Develop metadata from the ERD and document in an Excel spreadsheet.
Using your selected RDBMS (SQL Server, Oracle, or MySQL), develop and execute an SQL script file of DDL
SQL to create the database tables in the metadata document.
Using your selected RDBMS, develop and execute an SQL script file of DML SQL INSERT statements to
populate the tables using SQL INSERT statements for at least 5 rows of data per table.
Using your selected RDBMS develop and execute an SQL script file to:
a) Show the contents of all tables
b) Retrieve all of the customers' names, account numbers, and addresses (street and zip code only),
sorted by account number
c) Retrieve all of the DVDs rented in the last 30 days and sort in chronological rental date order
d) Update a customer name to change their maiden names to married names. You can choose which
row to update. Make sure that you use the primary key column in your WHERE clause to affect only a
specific row.
e) Delete a specific customer from the database. You can choose which row to delete. Make sure that
you use the primary key column in your WHERE clause to affect only a specific row.
The metadata should be submitted in an Excel spreadsheet. All other outputs for the database
design, SQL code, and SQL results should be submitted in a single Word file in order, by step, and
clearly labeled.
The Word file should also have a preface describing the database life cycle steps and methodologies and a
conclusion section containing lessons learned from the course. The paper should be well written and formatted in
conformity with CSU-Global Guidelines for APA Style.
This assignment is due at the end of Week 8.
Course Policies
Course Grading
20% Discussion Participation
10% Mastery Exercises
35% Critical Thinking Activities
35% Final Portfolio Paper
Grading Scale and Policies
A
95.0 – 100
A-
90.0 – 94.9
B+
86.7 – 89.9
B
83.3 – 86.6
B-
80.0 – 83.2
C+
75.0 – 79.9
C
70.0 – 74.9
D
60.0 – 69.9
F
59.9 or below
In-Classroom Policies
For information on late work and Incomplete grade policies, please refer to our In-Classroom Student Policies
and Guidelines or the Academic Catalog for comprehensive documentation of CSU-Global institutional policies.
Academic Integrity
Students must assume responsibility for maintaining honesty in all work submitted for credit and in any other
work designated by the instructor of the course. Academic dishonesty includes cheating, fabrication, facilitating
academic dishonesty, plagiarism, reusing /re-purposing your own work (see CSU-Global Guide to Writing and
APA Requirements for percentage of repurposed work that can be used in an assignment), unauthorized
possession of academic materials, and unauthorized collaboration. The CSU-Global Library provides information
on how students can avoid plagiarism by understanding what it is and how to use the Library and Internet
resources.
Citing Sources with APA Style
All students are expected to follow the CSU-Global Guide to Writing and APA Requirements when citing in APA
(based on the APA Style Manual, 6th edition) for all assignments. For details on CSU-Global APA style, please
review the APA resources within the CSU-Global Library under the “APA Guide & Resources” link. A link to this
document should also be provided within most assignment descriptions on your course’s Assignments page.
Netiquette
Respect the diversity of opinions among the instructor and classmates and engage with them in a courteous,
respectful, and professional manner. All posts and classroom communication must be conducted in accordance
with the student code of conduct. Think before you push the Send button. Did you say just what you meant?
How will the person on the other end read the words?
Maintain an environment free of harassment, stalking, threats, abuse, insults or humiliation toward the
instructor and classmates. This includes, but is not limited to, demeaning written or oral comments of an ethnic,
religious, age, disability, sexist (or sexual orientation), or racist nature; and the unwanted sexual advances or
intimidations by email, or on discussion boards and other postings within or connected to the online classroom.
If you have concerns about something that has been said, please let your instructor know.
Download