Download Slide 1

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Data analysis wikipedia , lookup

Commitment ordering wikipedia , lookup

Operational transformation wikipedia , lookup

Information privacy law wikipedia , lookup

PL/SQL wikipedia , lookup

Expense and cost recovery system (ECRS) wikipedia , lookup

Serializability wikipedia , lookup

Microsoft Access wikipedia , lookup

Data model wikipedia , lookup

Open data in the United Kingdom wikipedia , lookup

SAP IQ wikipedia , lookup

Business intelligence wikipedia , lookup

Entity–attribute–value model wikipedia , lookup

Data vault modeling wikipedia , lookup

Oracle Database wikipedia , lookup

Versant Object Database wikipedia , lookup

Concurrency control wikipedia , lookup

Database wikipedia , lookup

Relational model wikipedia , lookup

Clusterpoint wikipedia , lookup

Database model wikipedia , lookup

Transcript
Using MIS 2e
Chapter 5
Database Processing
David Kroenke
09/22 – 4:30AM
© Pearson Prentice Hall 2009
5-1
Study Questions

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database application system?

Q4 – How do database applications make databases more useful?

Q5 – How are data models used for database development?

Q6 – How is a data model transformed into a database design?

Q7 – What is the user’s role in the development of databases?

Q8 – What are the responsibilities for database administration?
© Pearson Prentice Hall 2009
5-2

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database application system?

Q4 – How do database applications make databases more useful?

Q5 – How are data models used for database development?

Q6 – How is a data model transformed into a database design?

Q7 – What is the user’s role in the development of databases?

Q8 – What are the responsibilities for database administration?
© Pearson Prentice Hall 2009
5-3
Q1 – What is the purpose of a database?

No database designer knows the users’ needs ahead of time, so
finding out what they need is the essential first step.

Database development is a collaborative process (iteration and
feedback. You begin by asking users about their needs and building
a prototype. Then you iteratively get feedback on the prototype,
integrate the feedback into a new prototype, and get feedback again
until the prototype is just right for the user.

Users cannot describe exactly what they want when you begin. They
need to see something, relate it to their work, and then they respond
with changes. You need to patiently ask, prototype, and check to
uncover the true requirements.

The iterative process is essential. Users need to commit to it and to
fully engage with the developers.
© Pearson Prentice Hall 2009
5-4
Q1 – What is the purpose of a database?

If a developer says they will deliver a solution without first
demonstrating an understanding of what is required (a prototype),
get another developer.

An iterative process that shows small successes early in the
process and builds from there is an excellent approach.

Take the time to collaborate with the developer. Do not be a slave
to a schedule that was set in the beginning, when you knew the
least about the problem. Do not let schedules force omissions and
compromises that will hurt the project later.

Focus on producing useful results that users want.

As a database user, you play a crucial role in developing database
applications for your business or organization.
© Pearson Prentice Hall 2009
5-5
Q1 – What is the purpose of a database?

Think of a file as a list of records (like a single spreadsheet) with the
same format about some entity. Think of a database as a collection
of logically related lists (or spreadsheets).

Spreadsheets are good for tracking items with just one list (as
shown below) versus a database that tracks things involving more
than one list (as shown on the next slide).
Fig 5-1 List of Student Grades, Presented in a Spreadsheet
© Pearson Prentice Hall 2009
5-6
Q1 – What is the purpose of a database?
Different lists
One database
Fig 5-2 Student Data Shown in a Form, from a Database
© Pearson Prentice Hall 2009
5-7

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database application system?

Q4 – How do database applications make databases more useful?

Q5 – How are data models used for database development?

Q6 – How is a data model transformed into a database design?

Q7 – What is the user's role in the development of databases?

Q8 – What are the responsibilities for database administration?
© Pearson Prentice Hall 2009
5-8
Q2 – What is a database?
Attributes of the entity students
Table about the
entity students
© Pearson Prentice Hall 2009
5-9
Q2 – What is a database?

This figure shows the hierarchy of data elements working from
the smallest at the bottom to the largest at the top.
Fig 5-4 Hierarchy of Data Elements
© Pearson Prentice Hall 2009
5-10
Q2 – What is a database?
 An entity is an object, event or concept you want to track.
 A database is a self-describing collection of integrated records
about multiple, logically related entities. A concept abstracted
from these logically related entities is yet another entity, which is
the name of the database. For example, the Accounts
Receivable database contains the master file and the
transaction file.
 Each set of identical records is in a file. A file is called a table in
relational database terminology
© Pearson Prentice Hall 2009
5-11
Q2 – What is a database?

Bytes, characters of data, are grouped into columns which are also
called fields.

The fields are grouped into rows which are also called records.

A table is a group of similar rows or records which is also called a
file.

A table or file tracks one entity or theme.

A database tracks multiple, logically related entities or themes.
© Pearson Prentice Hall 2009
5-12
Q2 – What is a database?

A database is more than just a group of tables. It includes tables or
files plus the relationships among rows of different tables and
special data called metadata that describes the database’s
structure.
Disk Drive
Fig 5-5 Components of a Database
© Pearson Prentice Hall 2009
5-13
Q2 – What is a database?

This diagram shows
how relationships
among rows of
different tables are
implemented.

The Student Number
value in the first row of
the top table,1325,
relates to the same
Student Number value
in a row in the second
table.

Both that Student
Number value and
that of 4867 in the
second table relate to
those in the third.
© Pearson Prentice Hall 2009
You have identical fields in different files.
Rows in different files are related if these
identical fields have the same values.
Fig 5-6 Example of Relationships Among Rows
5-14
Q2 – What is a database?




Keys are a column that identifies a unique row in a table. In the
Student Table, the primary key is Student Number.
Every table must have a key.
A primary key, Student Number, can act as a foreign key in a
different table, like the Office Visit Table.
A relational database
uses primary keys and
foreign keys in tables to
represent relationships.
© Pearson Prentice Hall 2009
5-15
Q2 – What is a database?



Metadata are data that describe data and makes databases easy to
use. Metadata is always a part of a database.
The Field Name, Data Type, and Description at the top of this
diagram are part of the database’s metadata.
The additional
field properties
at the bottom
are also
considered
metadata.
 Databases are selfdescribing because
of their metadata.
Fig 5-7 Sample Metadata (in Access)
© Pearson Prentice Hall 2009
5-16

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database
application system?

Q4 – How do database applications make databases more useful?

Q5 – How are data models used for database development?

Q6 – How is a data model transformed into a database design?

Q7 – What is the user's role in the development of databases?

Q8 – What are the responsibilities for database administration?
© Pearson Prentice Hall 2009
5-17
Q3 – What are the components of a database application system?

By itself, a database of data may be in correct form but it is not
useful, except for queries, because there’s no way to process the
data to produce reports. The database needs a database
application system.

A database application system provides forms, formatted reports,
preformatted queries, and application programs to process and
convert the data into different formats to provide useful information
to users.
Fig 5-8 Components of a Database Application System
© Pearson Prentice Hall 2009
5-18
Q3 – What are the components of a database application system?

A DBMS creates and administers a database and provides an
interface for application programs to process the data.

Popular DBMS products include:






DB2 from IBM
Access from Microsoft (for personal computers)
SQL Server from Microsoft (for large computer systems)
Oracle from Oracle Corporation
MySQL, an open-source product that’s license-free
It’s easy to confuse a DBMS, which is a software program, with a
database, which is a collection of tables, relationships and
metadata. But, they are two different concepts.
© Pearson Prentice Hall 2009
5-19
Q3 – What are the components of a database application system?

A DBMS is used to read, add, modify, and delete tables, fields,
records, keys, relationships, and structures in a database.

This figure shows how the metadata in an existing table is modified
to add a new field, column, labeled “Response?”
Fig 5-9 Adding a New Column to a Table (in Access)
© Pearson Prentice Hall 2009
5-20
Q3 – What are the components of a database application system?

The Structured Query Language (SQL), is an international
standard language used by most major DBMS programs for
processing databases.

A DBMS includes tools to help you administer a database. You can

Set up a security system that includes permissions and
passwords.

Back up the data to prevent it from being lost or
compromised.

Improve the performance of applications by adding
structures.

Remove data that’s no longer needed.
© Pearson Prentice Hall 2009
5-21

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database application system?

Q4 – How do database applications make
databases more useful?

Q5 – How are data models used for database development?

Q6 – How is a data model transformed into a database design?

Q7 – What is the user's role in the development of databases?

Q8 – What are the responsibilities for database administration?
© Pearson Prentice Hall 2009
5-22
Q4 – How do database applications make databases more useful?

A database application includes forms, reports, queries, and
applications programs available to one or more users.

This figure shows three different applications stemming from a
single DBMS and a single database.
Fig 5-10 Use of Multiple Database Applications
© Pearson Prentice Hall 2009
5-23
Q4 – How do database applications make databases more useful?

Data entry forms are used
to read, insert, modify, and
delete data.

Reports are used to show
data in a structured context
as the example to the right
shows.
Fig 5-11 Example of a Student Report
© Pearson Prentice Hall 2009
5-24
Q4 – How do database applications make databases more useful?

A query form helps the
user quickly find answers to
questions. In this case, the
words “barriers to entry”
were found in Baker’s
record.
Fig 5-12 (a) & (b) Sample Query and Results
© Pearson Prentice Hall 2009
5-25
Q4 – How do database applications make databases more useful?


Database application programs process logic specific to a given
business need. For example, a program could track backordered
items and hold a customer order until the items are ready to ship.
Database application programs enable database processing over
the Internet as the figure below shows. Users access the
applications programs on a Web server, which in turn accesses a
single DBMS and database.
Fig 5-13 Four Application Programs on a Web Server Computer
© Pearson Prentice Hall 2009
5-26
Q4 – How do database applications make databases more useful?

This figure depicts multi-user database processing. The system
must be managed properly to avoid data conflicts which occur
when multiple users attempt to update the same record at the same
time.
© Pearson Prentice Hall 2009
5-27
Q4 – How do database applications make databases more useful?

Here’s a comparison of an Enterprise DBMS versus a Personal DBMS.

Enterprise DBMS





Large organizational and
workgroup databases
Thousands of users
Many different database
applications
24/7 operations
DB2, SQL Server, Oracle

Personal DBMS




Smaller, simpler
applications
Personal or small
workgroup applications
Fewer than 100 users
Microsoft Access is both
a DBMS and application
development product as
this figure depicts.
Fig 5-14 Personal Database System
© Pearson Prentice Hall 2009
5-28

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database application system?

Q4 – How do database applications make databases more useful?

Q5 – How are data models used for database
development?

Q6 – How is a data model transformed into a database design?

Q7 – What is the user's role in the development of databases?

Q8 – What are the responsibilities for database administration?
© Pearson Prentice Hall 2009
5-29
Q5 – How are data models used for database development?

User involvement is critical for database development for these
reasons:



A database’s design depends on how users view their business
environment and how they do their jobs.
Database developers do not and cannot know what to include because
they don’t work with the data everyday. They must rely on users to tell
them what data are important and how they’re used.
A data model is similar to blueprints for a house. It’s a logical
representation of database data that describes data and their
relationships.
Fig 5-15 Database Development Process
© Pearson Prentice Hall 2009
5-30
Q5 – How are data models used for database development?
 Interviews with users lead to database requirements, which are
summarized in a data model.
 Once the users have approved (validated) the data model, it is transformed
into a database design.
 That design is then implemented into database structures.
Fig 5-15 Database Development Process
© Pearson Prentice Hall 2009
5-31
Q5 – How are data models used for database development?

An entity-relationship data model helps developers define things
(entities) that will be stored in the database as they are building a
data model. It also defines relationships among those entities.

Entities are things users want to track. It can be a physical object
(inventory items) or an event (sales order).

Each entity has attributes that describe its characteristics. The
entity “Order” has attributes like “OrderNumber” and “OrderDate”.

An identifier is an attribute whose value is associated with one and
only one entity instance. “OrderNumber” is the identifier for the
“Order” entity because there should only be one number for each
order.
© Pearson Prentice Hall 2009
5-32
Q5 – How are data models used for database development?


Student, Department, Advisor, Email, and Office_Visit are the entity
names in this model.
The entity identifiers are StudentNumber, DeptName, and
AdvisorName. Not all entities require an identifier.
Entity Name
Entity
Identifier
Fig 5-16 Student Data Model Entities
© Pearson Prentice Hall 2009
5-33
Q5 – How are data models used for database development?

Relationships join one
entity to another entity
 One-to-one – 1:1
 One-to-many – 1:N
 Many-to-many – N:M

This diagram shows that
each Department Entity
can have multiple Adviser
Entities in a one-tomany relationship.
Adviser Entities can have
a many-to-many
relationship with Student
Entities.
© Pearson Prentice Hall 2009
5-34
Q5 – How are data models used for database development?


The line style between entities describes the type of relationship as
shown in the entity-relationship diagram below.
This diagram depicts crow’s feet between the entities to describe
the relationships. It shows a one-to-many (1:M) relationship between
Department and Adviser and a many-to-many (N:M) relationship
between Adviser and Student entities.
Fig 5-19 Sample Relationships – Version 1
© Pearson Prentice Hall 2009
5-35
Q5 – How are data models used for database development?

The entity-relationship diagram below shows a many-to-many
(N:M) relationship between Department and Adviser and a one-tomany (1:M) relationship between Adviser and Student.

Because relationships among entities can vary, only the user can
describe the entity-relationship. That’s why it’s so important for
users to help design databases.
Fig 5-19 Sample Relationships – Version 2
© Pearson Prentice Hall 2009
5-36
Q5 – How are data models used for database development?




Maximum cardinality represents the maximum number of entities
that can be involved in a relationship.
Minimum cardinality represents the minimum number of entities
that can be involved in a relationship.
The vertical bar below indicates that at least one entity is required
between Department and Adviser and between Adviser and Student.
The oval below indicates that an entity is optional and doesn’t
require a relationship.
Fig 5-20 Sample Relationships Showing Maximum/Minimum Cardinality
© Pearson Prentice Hall 2009
5-37

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database application system?

Q4 – How do database applications make databases more useful?

Q5 – How are data models used for database development?

Q6 – How is a data model transformed into a
database design?

Q7 – What is the user's role in the development of databases?

Q8 – What are the responsibilities for database administration?
© Pearson Prentice Hall 2009
5-38
Q6 How is a data model transformed into a database design?

Database design is the process of:

Defining a data model

Converting the data model into tables

Defining relationships with foreign keys

Defining data constraints.
© Pearson Prentice Hall 2009
5-39
Q6 How is a data model transformed into a database design?



Converting a poorly structured table into two or more well-structured
tables is called normalization.
The table below is poorly designed because it includes the
DeptName along with DeptNo as part of the Employee record,
creating data redundancy.
It also creates data integrity
problems because
the DeptName is not
consistent throughout
the table after the
data were updated.
Fig 5-21 Poorly Designed Employee Table
© Pearson Prentice Hall 2009
5-40
Q6 How is a data model transformed into a database design?



Normalizing the tables by splitting the Department data into a
separate table, as shown below, allows each table to describe a
single topic or theme. The tables have been transformed into a
normal form.
By eliminating the duplicate data, you eliminate data integrity
problems. That’s called
normalizing for data
integrity.
Now, the department
name only needs to
be updated in one place
in the normalized tables.
© Pearson Prentice Hall 2009
5-41
Q6 How is a data model transformed into a database design?

This chart shows the necessary steps to transform a
data model into a relational database design.
 Finally, you define the data constraints.
Fig 5-23 Transforming a Data Model into a Database Design
© Pearson Prentice Hall 2009
5-42
Q6 How is a data model transformed into a database design?


The figures below and on the next slide depict the steps used to
create a well structured database that will produce useful
information.
The figure on the left represents the relationship between tables.
The figure on the right shows a normalized table for each entity.
From Figure 5-24 Representing a 1:N Relationship
© Pearson Prentice Hall 2009
5-43
Q6 How is a data model transformed into a database design?

The figure below shows how relationships are represented using
foreign keys. It’s the last step in transforming a data model into a
database design.
From Figure 5-24 Representing a 1:N Relationship
© Pearson Prentice Hall 2009
5-44

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database application system?

Q4 – How do database applications make databases more useful?

Q5 – How are data models used for database development?

Q6 – How is a data model transformed into a database design?


Q7 – What is the user's role in the development
of databases?
Q8 – What are the responsibilities for database administration?
© Pearson Prentice Hall 2009
5-45
Q7 – What is the user's role in the development of databases?

Your role in the database development process is to decide what
data should be included and how records should relate to one
another.

The best time to change a database structure is during the data
modeling stage. It’s easier and cheaper to change your mind before
anything is actually built. The costs of correcting the database in
time and money later on may be very high.

Each entity must contain all the data you need to do your job.

Each relationship must accurately reflect the appropriate view of
your business.

You must be the final judge of how well the database will serve
your needs. Do not go forward until the data model is accurate.
© Pearson Prentice Hall 2009
5-46

Q1 – What is the purpose of a database?

Q2 – What is a database?

Q3 – What are the components of a database application system?

Q4 – How do database applications make databases more useful?

Q5 – How are data models used for database development?

Q6 – How is a data model transformed into a database design?

Q7 – What is the user's role in the development of databases?

Q8 – What are the responsibilities for database
administration?
© Pearson Prentice Hall 2009
5-47
Q8 – What are the responsibilities for database administration?

Databases are the primary resource for information about the
repetitive, recorded activities for most businesses. The database will
constrain or enable your visibility into your business.

As databases touch more aspects of systems and business
functions, the utility of a database increases as do potential
problems.

Database administration manages the development, operation,
and maintenance of databases.

Database administration must protect the database and maximize
its availability for authorized use.
© Pearson Prentice Hall 2009
5-48
Q8 – What are the responsibilities for database administration?

Database administration tasks are divided into four categories as
shown below and on the next slide.
 Development
 Operation
 Backup and recovery
 Adaptation
Fig 5-26 Summary of Database Administration Tasks
© Pearson Prentice Hall 2009
5-49
Q8 – What are the responsibilities for database administration?
Fig 5-26 Summary of Database Administration Tasks, continued
© Pearson Prentice Hall 2009
5-50