MIS582 iLab 3 Week 5 Database Construction Using MySQL
In this assignment, you will learn to create a database schema from a given ERD. To complete this assignment, you will need to be able to run a script in MySQL.
Please ensure that you can connect to MySQL on the Omnymbus edupe web server.
Contact your instructor for assistance for any issues that you are having with the MySQL/edupe environment.
SQL script file named LastName_Wk5.sql. That is a txt document with the .sql extension. It is a script of SQL commands that executes in a MYSQL environment.
A text document named LastName_Wk5_Output.txt which is a copy of the results obtained when the SQL command script it run. The Instructor must be able to run our script and obtain identical results.
When you are done submit them to the Week 5: iLab Dropbox. Files that have been opened or processed by any software other than Notepad are not acceptable. Zipped files are not acceptable and may be returned ungraded.
MySQL in the edupe environment. SQLZOO may be used to test the scripts.
Access the software at https://devry.edupe.net:8300.
Steps 1–8 iLAB STEPS
STEP 1: Entity Relationship Diagram Analysis
Review the ERD below to understand the entities, attributes, primary keys, and relationships that you will create in your MySQL database.
STEP 1: Create a New Database
• Create a new database following the naming conventions we are using for our databases, as specified in the tutorial file Creating a Database within MySQL.pdf listed in the doc-sharing folder titled “Omnymbus Tutorial Files” in Doc-Sharing. All of our work in this iLab, will be done under this database.
STEP 2: Create SQL File
• To reference, learn and apply MySQL’s own dialect of the SQL language to this iLab, browse through the file M10C_KROE8352_13_SE_WC10C.pdf in the Doc Sharing folder titled My SQL Documents.
• Create a script file named LastName_Wk5.sql containing SQL statements created in Steps 3–7 below.
• But first include the following commands at the top of your script:
o SET FOREIGN_KEY_CHECKS=0;
o DROP TABLE IF EXISTS STUDENT;
o DROP TABLE IF EXISTS CAMPUS;
o DROP TABLE IF EXISTS ROOM;
o DROP TABLE IF EXISTS COURSE;
o DROP TABLE IF EXISTS INSTRUCTOR;
o DROP TABLE IF EXISTS APPROVED_INSTRUCTOR;
o DROP TABLE IF EXISTS CLASS;
o DROP TABLE IF EXISTS STUDENT_GRADE;
o SET FOREIGN_KEY_CHECKS=1;
STEP 3: Add Tables, Set Primary Keys and Foreign Keys
Add tables to the MySQL database.
• Add a table for each entity listed in the provided ERD diagram.
• Add a column for each attribute listed in the provided ERD diagram.
• Select primary key for each table as indicated in the provided ERD diagram.
• Identify foreign key relationship between tables as indicated in the provided ERD diagram.
• Enable referential integrity on the relationship.
• Enable cascade updates on the relationship.
STEP 4: Set Data Types for Table Fields
For every column in every table, update the data type as needed to enforce the domain constraints of the data.
• Dates should have a date data type.
• Surrogate keys should be auto-numbered.
• Numeric data should have a numeric data type.
• Character data should have a character data type.
STEP 5: Set Column Constraints
Set the following column constraints in your database.
• Student first and last name cannot be a null value.
• Course credit hours must be between one and four.
• Course name must be unique and cannot be a null value.
• Instructor first and last name cannot be a null value.
• Grade must be one of these values: A, B, C, D, F, I, W, or E. W signifies withdrawn and E signifies enrolled.
STEP 6: Add Data to Tables
Write INSERT statements to add at least 2–3 rows of data to each table in your database. Use any values that you like for each of the columns. Remember that you must add data to parent tables before adding data to child tables, because referential integrity is enabled.
HINT – Do not spend any lengthy amount of time on the INSERTs. This data has no use other than making sure the CREATE ran correctly.
STEP 7: Run the Script
• Include a COMMIT command at the end of the script.
• Include SHOW TABLES command at the end of the script, to show all tables created.
• Include SELECT statements for each table at the end of the script, to show data inserted.
• Give your script a run, by uploading into Omnymbus and executing it just like you did in iLab1.
• Paste a copy of the output in a Notepad document named LastName_Lab3_Output.TXT
Step 8: Save and Upload to Dropbox
When you are done, submit the following files to the Week 5: iLab Dropbox:
• LastName_Wk5.sql A text file you created with Notepad
• LastName_Wk5_Output.txt A text file created by copy and paste from edupe.
Points will be awarded according to the following rubrics.
• 5 points: Table created for each entity in the provided E-R model
• 5 points: Column created for each attribute in the provided E-R model
• 5 points: Primary key added for each table with unique constraints specified as column properties
• 5 points: Data type set for each attribute
o Dates should have a date data type.
o Surrogate keys should be autonumbered.
o Numeric data should have a numeric data type.
o Character data should have a character data type.
• 10 Points: Relationships created as shown on the provided E-R model
o Relationships enabled for referential integrity
o Relationships enabled for cascade updates.
• 10 Points: At least two rows of data added for each table
• 10 Points: Column constraints added as indicated in project description, checked by adding rows to data with invalid values
o Student name cannot be set to null.
o Course credit hours are restricted to between one and four.
o Course name must be unique and cannot be set to null.
o Instructor last name and first name cannot be set to null.
o Grade is restricted to be one of these values: A, B, C, D, F, I, W, or E (enrolled).