ECET 450: Laboratory 2
Part B:
Purpose:
This laboratory provides practice in the creation of realistic tables and their relationships using Oracle SQL*Plus and introduces writing SQL*Plus script files. This laboratory exercise creates a relatively simple invoice system using SQL statements. This DB schema is used throughout the next several weeks of laboratory exercises. The final product is an SQL script that makes it possible to initially create and re-create, if need be, the DB schema in order to do to the later laboratory exercises.
Procedure:
Using your assigned user name, password, and host string, log in to Oracle SQL*Plus. Record your dialog with a spool file.
Following the four requirements below, create the 5 tables shown later in this laboratory exercise, and enter all data as shown. Be sure to record your interactions with SQL*Plus using the spool command.
1. Use table names, attribute names, and data exactly as shown. The one exception is that you will omit the dollar sign and comma separators in the money amounts. Accurately enter the data as you will need these tables in future laboratory assignments.
2. Save all of your commands in a single script file for printing and submission. This file should each contain a minimum of your name and the date in comments at the beginning of the file, and any other comments you feel add to the understanding of the script file. Copy and edit your spool file to create the load_tablesXXX.sql file where XXX are your initials. The only items that should be in this load_tablesXXX.sql file are your comments and the SQL statements that drop tables, create tables, insert data values, and display table. Be sure to remove all incorrect commands and the Oracle responses to the correct commands from the file. Save this file for the future in case you have to rebuild these tables. Be sure to include a printout of this file in your report.
3. The second submission requirement is a printout of each of the 5 tables completely loaded with the specified data. Use the SET LINESIZE command to avoid line wrap around of your table data. Print your list file in landscape mode.
4. All primary key and foreign key constraints should be named according to the method presented in the classroom. If you have any questions about which attributes are primary and/or foreign keys, please ask about them.
5. The ultimate test is the execution of this SQL script file in the following form: @ <path_name>/load_tablesXXX.sql
<First Page of tables>
REP Table
REP_ID
REP_LNAME
REP_FNAME
REP_STREET
REP_CITY
REP_STATE
REP_ZIP
REP_COMM
REP_RATE
223
Roma
Theresa
735 First
Leonard
GA
25742
$21,756.50
0.06
237
Miller
Fred
643 High
Sheldon
GA
25753
$38,612.00
0.08
268
Rodriguez
Miguel
2737 Tyler
Springfield
GA
25758
$19,774.00
0.06
CUSTOMER Table
CUST_ID
CUST_NAME
CUST_STREET
CUST_CITY
CUST_STATE
CUST_ZIP
CUST_BALANCE
CUST_LIMIT
REP_ID
1159
Charles Appliance and Sport
3948 Brown
Leonard
GA
257 ...
1. ECET 450: Laboratory 2
Part B:
Purpose:
This laboratory provides practice in the creation of realistic
tables and their relationships using Oracle SQL*Plus and
introduces writing SQL*Plus script files. This laboratory
exercise creates a relatively simple invoice system using SQL
statements. This DB schema is used throughout the next several
weeks of laboratory exercises. The final product is an SQL
script that makes it possible to initially create and re-create, if
need be, the DB schema in order to do to the later laboratory
exercises.
Procedure:
Using your assigned user name, password, and host string, log
in to Oracle SQL*Plus. Record your dialog with a spool file.
Following the four requirements below, create the 5 tables
shown later in this laboratory exercise, and enter all data as
shown. Be sure to record your interactions with SQL*Plus
using the spool command.
1. Use table names, attribute names, and data exactly as shown.
The one exception is that you will omit the dollar sign and
comma separators in the money amounts. Accurately enter the
data as you will need these tables in future laboratory
assignments.
2. Save all of your commands in a single script file for printing
and submission. This file should each contain a minimum of
2. your name and the date in comments at the beginning of the file,
and any other comments you feel add to the understanding of
the script file. Copy and edit your spool file to create the
load_tablesXXX.sql file where XXX are your initials. The only
items that should be in this load_tablesXXX.sql file are your
comments and the SQL statements that drop tables, create
tables, insert data values, and display table. Be sure to remove
all incorrect commands and the Oracle responses to the correct
commands from the file. Save this file for the future in case
you have to rebuild these tables. Be sure to include a printout
of this file in your report.
3. The second submission requirement is a printout of each of
the 5 tables completely loaded with the specified data. Use the
SET LINESIZE command to avoid line wrap around of your
table data. Print your list file in landscape mode.
4. All primary key and foreign key constraints should be named
according to the method presented in the classroom. If you
have any questions about which attributes are primary and/or
foreign keys, please ask about them.
5. The ultimate test is the execution of this SQL script file in
the following form: @
<path_name>/load_tablesXXX.sql
<First Page of tables>
REP Table
REP_ID
REP_LNAME
REP_FNAME
REP_STREET
REP_CITY
REP_STATE
REP_ZIP
REP_COMM
11. CET 450 Laboratory 2 Page 1 of 5
ECET 450: Laboratory 2
Part A:
Purpose:
This exercise involves normalizing a small part of a DB. The
steps to complete this exercise include getting the data items
into 1NF, 2NF, and 3NF. The final step is to generate the ERD
for the table or tables that are in the dependency diagram in
3NF.
Discussion:
Some small business wants to keep track of office furniture,
computers, printers, etc. A sample of the ITEM records is
shown below:
ATTRIBUTE NAME
SAMPLE VALUE
SAMPLE VALUE
SAMPLE VALUE
ITEM_ID
D1342245
D1453356
D1365779
ITEM_DESCRIPTION
IQ Deskjet 683P
IQ Toner
DT Photocopier
ROOM_NUMBER
227
227
12. 342
BLDG_CODE
SC
SC
ET
BLDG_NAME
Science
Science
Electronics Technology
BLDG_MANAGER
A. B. Jones
A. B. Jones
R. S. Smith
1. Draw the dependency diagram using the data in the table.
Make sure to label the transitive and partial dependencies.
2. Using the dependency diagram developed in step 1, create a
set of dependency diagrams that meet 3rd Normal Form
requirements. Rename attributes to meet the naming
conventions. Create new entities and attributes as necessary.
3. Draw the crow’s foot ERD with the VISIO drawing tool using
the results of step 2.
Part B:
Purpose:
This laboratory provides practice in the creation of realistic
tables and their relationships using Oracle SQL*Plus and
introduces writing SQL*Plus script files. This laboratory
exercise creates a relatively simple invoice system using SQL
statements. This DB schema is used throughout the next several
weeks of laboratory exercises. The final product is an SQL
script that makes it possible to initially create and re-create, if
need be, the DB schema in order to do to the later laboratory
exercises.
13. Procedure:
Using your assigned user name, password, and host string, log
in to Oracle SQL*Plus. Record your dialog with a spool file.
Following the four requirements below, create the 5 tables
shown later in this laboratory exercise, and enter all data as
shown. Be sure to record your interactions with SQL*Plus
using the spool command.
1. Use table names, attribute names, and data exactly as shown.
The one exception is that you will omit the dollar sign and
comma separators in the money amounts. Accurately enter the
data as you will need these tables in future laboratory
assignments.
2. Save all of your commands in a single script file for printing
and submission. This file should each contain a minimum of
your name and the date in comments at the beginning of the file,
and any other comments you feel add to the understanding of
the script file. Copy and edit your spool file to create the
load_tablesXXX.sql file where XXX are your initials. The only
items that should be in this load_tablesXXX.sql file are your
comments and the SQL statements that drop tables, create
tables, insert data values, and display table. Be sure to remove
all incorrect commands and the Oracle responses to the correct
commands from the file. Save this file for the future in case
you have to rebuild these tables. Be sure to include a printout
of this file in your report.
3. The second submission requirement is a printout of each of
the 5 tables completely loaded with the specified data. Use the
SET LINESIZE command to avoid line wrap around of your
table data. Print your list file in landscape mode.
4. All primary key and foreign key constraints should be named
according to the method presented in the classroom. If you
14. have any questions about which attributes are primary and/or
foreign keys, please ask about them.
5. The ultimate test is the execution of this SQL script file in
the following form: @
<path_name>/load_tablesXXX.sql
<First Page of tables>
REP Table
REP_ID
REP_LNAME
REP_FNAME
REP_STREET
REP_CITY
REP_STATE
REP_ZIP
REP_COMM
REP_RATE
223
Roma
Theresa
735 First
Leonard
GA
25742
$21,756.50
0.06
237
Miller
Fred
643 High
Sheldon
GA
25753
$38,612.00
0.08
17. GA
25742
$13,817.00
$15,000.00
223
1619
Murray’s Department Store
483 Cambridge
Sheldon
GA
25753
$2,217.00
$10,000.00
268
1687
Lawrence Sport and Appliance
393 Jefferson
Lafayette
GA
25752
$3,962.00
$5,000.00
237
1725
Dustin’s All Seasons
171 Washington
Sheldon
GA
25753
$359.00
$7,500.00
237
1842
Four Seasons Store
19 Front
Grove
22. 42447
BZ117
2
$794.95
42447
CE163
3
$199.95
42449
DS104
1
$495.00
42453
KG130
3
$1,290.00
CET 450 Laboratory 2 Page 1 of 5
ECET 450: Laboratory 1
Part A:
Purpose:
This laboratory exercise introduces the SQL language using
Oracle’s SQL*Plus command-line interface. In particular, the
student executes and edits SQL commands in the command line
interface to create and populate a small table.
Procedure:
1. Following the specified directions, and using your assigned
user name, password, and host string, log in to SQL*Plus.
23. 2. Change your password to something you will remember.
Type the following at the SQL> prompt ALTER USER
user_name IDENTIFIED BY new_password;
3. In order to do this laboratory exercise, it is necessary for you
to save all your command-line inputs and Oracle’s responses.
At the SQL> prompt the general form of the spool command is
spool p:<path_name>/<list_file_name>. For example, the
professor might use the following command
spoolf:/ecet450/lab01a/lab01a.lst. Be sure to create all the
folders in the path first.
4. Use the CREATE TABLE and INSERT INTO commands to
create the EMPLOYEE table shown on the next page. Use the
decimal data type for numeric attributes. Use the edit
commands as needed to fix any errors along the way.
5. When you are done, use the SELECT statement to display
your finished table.
6. At the SQL> prompt enter the spool off command to
terminate collection of your dialog. Your dialog is not placed
into your list file until you execute this command. If you exit
from SQL*Plus before executing the spool off command, your
dialog will be lost.
7. Type EXIT to terminate SQL*Plus.
8. Print your list file, be sure to write your name on it, and
submit it at the time and in the manner specified by your
instructor.
25. This laboratory exercise introduces the concept of the Entity
Relationship Diagram (ERD). The work should be done using
the MS Visio tool using a crow’s foot ERD. The finished ERD
should not contain a many-to-many relationship. Note that this
exercise is concerned with only a small part of a larger DB.
Discussion:
A college wants to add extracurricular activities to its DB
containing student data. The student table contains the student's
identifier, his/her name, his/her address, his/her primary
telephone number, and his/her birth date. The new activity
table contains data about the college's recognized
extracurricular activities including the activity's name, the name
of the activity’s advisor, and the advisor’s office location. The
college wants to also track the number of years that a specific
student participates in a specific extracurricular activity.
Obviously more than one student must participate in an
extracurricular activity in order for the college to recognize the
activity. Also a specific student may participate in zero, one, or
several extracurricular activities. As a result, the student table
and the activity table have a many-to-many relationship. In
addition a specific student may have participated in one
activity, e.g. IEEE student chapter, for three years and in
another activity, e.g. TAP honorary, starting this year.
Using the MS Visio drawing tool, draw a crow’s foot ERD that
describes the Student table, the Activity table, any other needed
tables, and the relationships among these tables. Be sure to
include the following items in your diagram:
1. Update all attribute names so that they partially or
completely contain the name of the table in which they reside.
2. Identify the attribute or the group of attributes that is the
primary key of each table.
3. Modify your ERD so that it does not include any many-to-
many (M:N) relationships.
4. Indicate the connectivity of each relationship, i.e. 1:1, 1:M,
and M:N, using the correct crow’s foot symbols.