Test Reviews “Exam 1” - Resources for Academic Achievement

Download Report

Transcript Test Reviews “Exam 1” - Resources for Academic Achievement

Test Reviews
“Exam 1: Profs. Kendra,
Goyal & McIntosh”
Computer Resource Center
REACH 2014
1
Database Design
Basic Terminology:
• A table consists of data that is arrayed in rows and
columns.
• A row of data is called a record.
• A column of data is called a field.
Thus, a record is a set of related fields. The fields in a
table should be related to one another in some way.
2
Basic Terminology
• Primary key field is a field in which each record has a
unique value.
e.g. The SSN
• Compound Primary Key is used when there is no single
field whose values are all different. In that case, two or
more fields are combined. The combination of the fields’
values should be unique.
• Foreign key is the primary key of another table.
e.g. suppose we need to link the employee table with
the Hours worked table for payroll purposes. The Employee
ID number (EIN) is the primary key of the employees table
but the foreign key of the hours worked table.
*Every foreign key must be associated with a primary key in
another table.
3
Basic Terminology
• A form is a database object that is created
from an existing table to make the process
of entering data more user-friendly
• A query is the database equivalent of a
question that is posed about data in a table
(or tables).
• Queries can be designed to search multiple
tables but these tables should be
connected by a join operation.
4
Database Design
Database design concepts:
Entities an entity is a tangible thing or an event. It is a person,
place, thing or concept about which data can be collected.
Consider the following examples:
1) The database of a video store would have one entity named
video and another named customer (These are physical
entities).
2) Organizations incur expenses from paying hourly employees
and purchasing materials from suppliers. Hours worked and
purchases are event entities in the database of most
organizations.
3) The library lends books for free. If you were to think of
checking out a book as a sales transaction for zero revenue,
how would you handle the revenue generating event?
The event entity here is the number of checkouts.
5
Database Design
•
•
•
•
•
Relationships you should consider the relationship of each entity
to the other entities you have identified.
Cardinality of any relationship can be one-to-one, one-to-many,
or many-to-many.
A one-to-one relationship is like A book is published by one
company or A shark lives in one place (the ocean).
There is a many-to-many relationship between the records in the
doctor table and records in the patient table because doctors
have many patients, and a patient could have several doctors;
A one-to-many relation between the department table and the
doctor table because each doctor may work for only one
department, but one department could have many doctors.
6
Database Design
• A book can have more than one author. An author
can write more than one book. How would you
describe the relationship between authors and
books?
Many-to-many
• A member can borrow any number of books at one
checkout. A book can be checked out more than
once. How would you describe the relationship
between books and checkouts?
Many-to-many
7
Database Design
• Attributes an attribute is a characteristic of an
entity. These attributes become the table’s field.
• E.g. what are the attributes for the entity
“Customer”?
Customer ID, First name, Surname, Date of Birth,
Address and Phone no.
• What are the attributes for the entity “Fashion
Model”?
Name, Height, Weight, Dress size, Hair color and Eye
color.
8
Database Design Rules
• Rule 1: You do not need a table for the business
The database represents the entire business. Thus in
the practice example* The library is not an entity.
*practice problem at the end of tutorial A.
• Rule 2: Identify the entities in the business
description
In our example the entities are Members, employees
and books.
9
Database design rules
• Rule 3: Look for relationships among the entities
look for relationships between entities; one-to-many
and many-to-many.
In our example: one-to-many: a member can check
out more than one book.
• Rule 4: Look for attributes of each entity and
Primary Key
designate a primary key.
Attributes of members: name, DOB, phone no., email
address, member ID card number …etc.
Employees: name, # of hours worked, job title,…etc.
Books: name, authors, type, status, member ID card
number…etc.
Foreign key
10
Database Design Rules
• Rule 5: Avoid data redundancy
you should not include extra (redundant) fields in a
table. Redundant fields take up extra disk space and
lead to data entry errors because the same value
must be entered in multiple tables.
Rule 6: Do not include a field if it can be calculated
from other fields
A calculated field is made using the query generator
as we will see later.
** You should realize the importance of accuracy,
case sensitivity…etc in designing databases.
11
Metadata & Hierarchy of Data
• Metadata: Data about data. Metadata describes
how and when and by whom a particular set of
data was collected, and how the data is
formatted. A text document's metadata may
contain information about how long the document
is, who the author is, when the document was
written, and a short summary of the document.
• Hierarchy of Data: refers to the systematic
organization of data, often in a hierarchical form.
Data organization involves fields, records, files and
so on.
12
Data Dictionary
• Data Dictionary: In database management systems,
a file that defines the basic organization of a database.
A data dictionary contains a list of all files in the
database, the number of records in each file, and the
names and types of each field. Most database
management systems keep the data dictionary hidden
from users to prevent them from accidentally destroying
its contents.
• Data dictionaries do not contain any actual data from
the database, only bookkeeping information for
managing it. Without a data dictionary, however, a
database management system cannot access data
from the database.
13
Creating tables
• Create tab  Table design (in the tables group)
• Fill in the table’s fields.
Choose a suitable data type for each field.
• For example
text  Last Name
Date/time  Date Hired
Yes/No  US Citizen
•
Change the lengths of the text fields from 255 to 30
spaces.
14
Creating tables
• We need to make the Employee ID a primary key:
Select the Employee ID field then in the Table tools
Design click Primary Key tab
• After you finish click the File tab  Save object as 
then name your table
• Note that this is different from Save Database as which
saves the whole database.
15
Creating Compound Primary Key
• The two fields must be appear one after the other in
the table definition screen (plan ahead for that
format).
• Highlight one field, hold down the control key and
highlight the next field.
• Go to table tools  design tab Primary Key
16
Adding records to a table
• Double click the table’s name in the navigation
pane at the left of the screen then start typing data
directly into the cells.
• Enter your data one field value at a time.
• Each time you finish entering a value, press Enter to
move the cursor to the next cell.
• After you enter the data in the last cell in a row, the
cursor moves to the first cell in the next row and
Access automatically saves the record
• No need to save through the File tab.
17
Creating Queries
• Using Calculated Fields in Queries:
• E.g. suppose we have the following table.
•
if you have an existing field containing the number
of boxes of Girl Scout cookies sold, you may want to
see how much money was collected for
each cookie sale. In this example, the boxes sold
for $3.95 each.
18
Using Calculated Fields in Queries
• In this case we will create a calculated field in a
query.
• Create tab Query design
Don’t Forget the Colon.
Also the field name must be enclosed in square
brackets.
19
Using Calculated Fields in Queries
• How to format the calculated field output?
• 1. select the output column by clicking the line
above the calculated field expression.
• 2. the column darkens to indicate the selection.
• 3. Design tab  property sheet  format
20
Avoiding errors when making
calculated fields
1. Do not enter the expression in the criteria cell. Enter
it in the Field cell.
2. Spell, capitalize, and space a field’s name exactly
as you did in the table definition.
3. Don’t use parentheses or curly braces instead of
the square brackets.
21
“Relating” two or more tables
by the join operation
• Suppose you want to see the last names, employee
IDs, wage rates, salary status, and citizenship only
for US citizens and hourly workers.
• Problem: the data is spread across two tables.
• Solution: add both tables and pull down the five
fields you need.
• Step 1: Create tab  Query design
• Step 2: Click one table name and hold down the
ctrl button while choosing the other table name.
• Step 3: start pulling down the fields you need and
add the criteria expressions.
22
“Relating” two or more tables
by the join operation
23
“Relating” two or more tables
by the join operation
• you can use calculated fields using more than one
table.
• Just follow the same steps and add the calculated
field in the design view like what we did earlier.
24
Totals Queries
• Assume that you want to see two pieces of information
for hourly workers:
1. The average wage rate
2. 110 percent of the average rate
Step1:
Create the first query, click the design tab  Totals button
in the show/hide group. This will give us the average of the
wage rate field.
Note that: you should type the revised
heading for the wage rate field,
i.e. Average rate: wage rate.
N.B. we need the average of this field.
Also to get the hourly workers only,
enter Criteria=No.
25
Totals Queries
• Now begin a new Query.
But instead of basing it on a table, we will base it on
the previous query.
• Design the new query and create
a calculated field inside it.
26
Using the Date() function in
Queries
• Access has two important date function features:
1. The built in Date() function which gives today’s
date.
2. Date arithmetic lets you subtract one date from
another to obtain the difference-in number of
days- between two calendar dates.
27
Using the Date() function in
Queries
• Suppose you want to give each employee a $1
bonus for each day the employee has worked.
• So, you need to calculate the number of days
between the employee’s date of hire and the date
the query is run.
Date
arithmetic
28
Using time arithmetic in
Queries
• Access allows you to subtract the values of time fields to
get an elapsed time.
• In Access, subtracting one time from the other yields the
decimal portion of a 24-hour day.
E.g. if the employee worked 8 hours, the time arithmetic
function yields 0.333. That’s why we multiply by 24.
29
Update Queries
• Suppose you want to give all non-salaried workers a $0.5
pay raise.
If you have 3 workers  change the wage rate data in
the table.
If you have 3000 workers  it would be much faster and
more accurate to change the wage rate by using an
update query that adds $0.5 to each non-salaried
employee’s wage rate.
30
Update Queries
• First start by making a select query.
• Then click the update button
in the query type group.
31
Update Queries
We will write the updated
data in the Update to line
in the QBE grid.
We will update only the nonsalaried workers by using a filter
under the salaried field.
32
Update Queries
• When you run the query, the following warning
message will appear.
• Click yes, and the records will be updated.
33
Delete Queries
• Delete queries work like the update queries.
• E.g. Suppose your company is purchased by the
state of Delaware. So you need to delete or “fire”
all employees who are not exclusively Delaware
residents.
<>  not
34
Scenario
• You have a table of medicines. One of them is now
banned. Create a query with the new
requirements.
• So what is the type of this query?
Delete Query
35
Parameter Queries
• Suppose you want to know how many hours a
particular employee has worked.
1. Run a select query.
2. You will get a message
to enter the employee
ID.
Enter your employee ID
and you will get the
desired information
36
Practice Queries (p.33  37)
• #2 Create a query that shows the last name, first name,
date hired, and state for employees who live in
Delaware or were hired after 12/31/99. The primary sort
(ascending) is on last name, and the secondary sort
(ascending) is on first name. The primary sort field must
be to the left of the Secondary sort field in the query
setup.
N.B. you have 3 tables.
Employee  Last Name, First Name, Employee ID, Street
Address, City, State, Zip, Date Hired, Us Citizen.
Wage Data  Employee ID, Wage Rate, Salaried.
Hours Worked  Employee ID, Week #, Hours.
37
Use this table to solve the practice query.
Field
Table
Sort
Show
Criteria
Or:
38
Answer to practice query #2
Field
Last Name
First Name
Date Hired
State
Table
Employee
Employee
Employee
Employee
Sort
Ascending
Ascending
>#12/31/1999#
=“DE”
Show
Criteria
Or:
39
Practice Queries
• #6 Create a parameter query that shows the hours
employees have worked. Have the parameter
query prompt for the week number. The output
headings should be Last Name, First Name, Week #,
and hours. This query is for non-salaried employees
only.
N.B. you have 3 tables.
Employee  Last Name, First Name, Employee ID, Street Address, City, State,
Zip, Date Hired, Us Citizen.
Wage Data  Employee ID, Wage Rate, Salaried.
Hours Worked  Employee ID, Week #, Hours.
Field
Table
Sort
Show
Criteria
Or:
40
Answer to practice query #6
Field
Last Name
First Name
Week #
Hours
Salaried
Table
Employee
Employee
Hours Worked
Hours Worked
Wage Date
Sort
Show
Criteria
[Enter Week #]
=No
Or:
41
Creating Reports
• Create basic ungrouped report:
• Select the table  create tab  report
42
Creating Reports
• Create Grouped Report:
• Design tab  Group and Sort button in the grouping and tools
group.
• Click the Add group button
then select the desired
table (Employee ID)
43
Creating Reports
• To total the hours worked by each employee:
select the Hours column heading.
Then on the Design tab  totals button in the
grouping and totals group  Sum
Layout
View
44
Creating Reports
• Design tab  Report view from the views group
Report
view
(final
view)
45
Making Forms
• First select the table or query you want to base the
form on
then select Create tab  form
• When you create a form within another form  this
is called a subform
• The Subform is useful when the form is based on one
or more tables.
46
Making Forms
• Step 1: select the table  create  Form
• Take the form into design view.
Design tab  make sure that the use control wizard
option is selected  click the subform/subreport
button.
47
Making Forms
Select use existing tables
and Queries  Next
Use your cursor to stretch out
the box under your main menu.
This dialog box will appear
48
Making Forms
• Choose the required table from the list  Next 
select choose from a list  Next  Finish.
49
Importing Data
• Open the Excel application and create a
spreadsheet.
• In the Access application: External data tab 
Excel in the import and link group
50
Importing Data
51
Importing Data
Choose the correct worksheet
Make sure to select the first row
contains column headings box
52
Importing Data
Choose the default settings for
each field you are importing
53
Importing Data
Choose an appropriate
name for your table
*you can change your table
design from Design button
54
Small Quiz
• (Database Concepts) The metadata for a database
describes which of the following properties of a
database?
• It defines the fields in the database tables
• It defines the structure of the database tables
• It defines the sizes and formats of the fields in the
database tables
• It identifies the primary keys
• All of the answers provided are correct
55
• (Database Concepts) Because it is relatively common and
everyone has one, the date of birth is often used as a primary
key in a database table for identifying employees within a
corporation.
True
False
• (Database Concepts) What is the term for a collection of
related records, such as the scores for all of the students in a
given section of CIS300?
•
•
•
•
•
Field
Character
Item
Table
Query
56
• (Database Concepts) Which of the following is the
smallest piece of data that can be stored within a
database? (select at least one, but no more than
two answers)
• bit
• byte
• character
• field
• record
• table
57
• (Database Concepts) Which of the following is a
reason why Microsoft Access is a popular choice for
a database management system?
• Widely available on Intel-based laptops and
desktop PC platforms
• Relatively inexpensive compared to other RDBMS
products such as Oracle
• Available in the premium editions of the Microsoft
Office suite
• Relatively easy to construct a simple database
• All of the answers provided are correct
58
•
•
•
•
•
•
•
(Database Concepts) Which of the following terms
is often used to refer to the columns shown in a
database table? (select at least one, but no more
than two answers)
row
data element
metadata
field
record
data type
59
•
•
•
•
•
•
(Database Concepts) A field within a database is
defined as a single item of data that is common to
all records and occurs as an individual _____ within
a table.
cell
column
row
value
entry
60
• (Microsoft Access) The Report Wizard is an easy to
use feature in Access that guides you through a
series of questions and then generates a
customized report based on the answers you
provide.
• True
• False
61
• (Microsoft Access) Which of the following types of
fields is used to produce a value from an expression
or function?
• Calculated
• AutoNumber
• OLE Object
• Indexed
• Number
62
• (Microsoft Access) Which of the following objects
provides a simple approach for less-experienced
users to extract information from a database?
(select at least one, but no more than two answers)
•
•
•
•
•
•
Forms
Macros
Modules
Queries
Reports
Tables
63
• While a database itself is a collection of several related
files, the program used to build databases, populate
them with data, and manipulate the data is called a(n)
• _DBMS – Database Management System.
• There are two overall approaches to maintaining data:
the traditional file approach—which has no mechanism
for tagging, retrieving, and manipulating data—and the
____, which does have this mechanism.
• Database Approach
• Data Approach
• Datafile Approach
• Indexed file approach
64
65
66