Transcript Document
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 1:
Introduction to Databases
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• List database types (e.g., flat file, relational), and
identify their uses and architectures
• Describe the types of database management
system (DBMS), and explain the benefits and
limitations of each DBMS type
• Analyze and select appropriate database
designs, and identify the solution that addresses
the application needs
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
What Is a Database?
• File-based databases
– Flat-file databases
• The evolution of databases
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Relational Databases and DBMSs
•
•
•
•
•
Relational databases
Structured Query Language
Database administrator
Advantages and disadvantages of DBMSs
Choosing the correct database type
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
The Origins of Relational Databases
• Codd first proposed the relational data
model in 1970
• System R
• Development of SQL
• INGRES
• IBM UK Scientific Center
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
List database types (e.g., flat file, relational),
and identify their uses and architectures
Describe the types of database
management system (DBMS), and explain the
benefits and limitations of each DBMS type
Analyze and select appropriate database
designs, and identify the solution that
addresses the application needs
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 2:
Relational Database Fundamentals
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• Define common database architectures (e.g.,
single, multi-tier)
• Describe the function of Structured Query
Language (SQL), including language subsets
• Describe the function of Data Definition
Language (DDL)
• Describe the function of Data Manipulation
Language (DML)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Describe the function of Data Control Language
(DCL)
• Define essential database concepts and terms,
including relation, relation name, table, row,
column, value, relational algebra, data
modeling, data relationship
• Explain the concepts of attribute, degree, tuple
and cardinality
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Define entities, including strong entities, weak
entities
• List characteristics of relations (e.g., column
characteristics, row characteristics)
• Describe table types (e.g., base tables, virtual
tables)
• Distinguish between primary and foreign keys,
including null value, composite key
• Explain data models in relational databases
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Describe common database relationships (e.g.,
one to one, one to many, many to many) and
identify the notation for such relationships (e.g.,
1:n)
• Define relational integrity concepts, including
domain constraints, entity and referential
integrity views
• Explain the structure and purpose of a data
dictionary
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Multitier Database Architecture
• Two-tier client-server architecture
– Fat client
• Three-tier client-server architecture
– Thin client
• n-tier architecture
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Relational Model Terminology
• Relational data
structure
• Rows (tuples)
• Columns (attributes)
•
•
•
•
Domains
Degrees
Cardinality
Normalization
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Using Tables to Represent Data
•
•
•
•
•
Entities
Characteristics of relations
Types of tables
Primary keys
Foreign keys
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Data Models
• Components
– Structural information
– Manipulative information
– Integrity information
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Entities and Data Relationships
• Entity-relationship (ER) modeling
• Strong entities
• Weak entities
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Relational Integrity
•
•
•
•
Domain constraints
Entity integrity
Referential integrity
Views
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Database Languages
•
•
•
•
Data Definition Language
Data Manipulation Language
Data Control Language
Data dictionaries
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
Define common database architectures (e.g.,
single, multi-tier)
Describe the function of Structured Query
Language (SQL), including language subsets
Describe the function of Data Definition
Language (DDL)
Describe the function of Data Manipulation
Language (DML)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Describe the function of Data Control Language
(DCL)
Define essential database concepts and terms,
including relation, relation name, table, row,
column, value, relational algebra, data
modeling, data relationship
Explain the concepts of attribute, degree, tuple
and cardinality
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Define entities, including strong entities, weak
entities
List characteristics of relations (e.g., column
characteristics, row characteristics)
Describe table types (e.g., base tables, virtual
tables)
Distinguish between primary and foreign keys,
including null value, composite key
Explain data models in relational databases
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Describe common database relationships (e.g.,
one to one, one to many, many to many) and
identify the notation for such relationships (e.g.,
1:n)
Define relational integrity concepts, including
domain constraints, entity and referential
integrity views
Explain the structure and purpose of a data
dictionary
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 3:
Database Planning
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• Describe the elements of a database planning
strategy (e.g., defining the scope of a database
application)
• List the necessary steps for creating a database
requirements document, including conducting
interviews, noting project constraints, identifying
the precise duties of the database, creating a
database design document
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Explain the importance of data modeling and
entity relationship diagrams during the planning
stage (e.g., define the concept of an entityrelationship [ER] diagram)
• Create a database prototype
• Describe the purpose of database application
testing, including white-box testing, black-box
testing
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• List the criteria for selecting a database
management system and an application
interface
• Describe database design steps, including
determining the proper steps in creating entities,
applying normalization, selecting a database
management system (DBMS)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Database Design Life Cycle
• Create a database strategy
• Define database application
scope
• Create a database
requirements document
• Design the database
• Select a DBMS
• Design the database
application
• Create database
prototypes
• Test the database
application
• Implement the
database application
• Convert legacy data
• Maintain the
database
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Database Requirements Document
• Conducting interviews
• Requirements document information
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Selecting a DBMS
• Selection criteria
– Data definition functionality
– Physical criteria
– Access criteria
– Transactions
– Utilities
– Development tools
– Miscellaneous features
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Selecting an Application Interface
GUI considerations
– Descriptive page
titles
– Clear instructions
– Consistent grouping
of input fields
– Logically labeled
fields
– Consistent color use
– Properly sized data
entry fields
– Logical cursor
movement
– Error messages
– Clearly indicated
optional fields
– Completion message
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
Describe the elements of a database planning
strategy (e.g., defining the scope of a database
application)
List the necessary steps for creating a database
requirements document, including conducting
interviews, noting project constraints, identifying
the precise duties of the database, creating a
database design document
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Explain the importance of data modeling and
entity relationship diagrams during the planning
stage (e.g., define the concept of an entityrelationship [ER] diagram)
Create a database prototype
Describe the purpose of database application
testing, including white-box testing, black-box
testing
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
List the criteria for selecting a database
management system and an application
interface
Describe database design steps, including
determining the proper steps in creating entities,
applying normalization, selecting a database
management system (DBMS)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 4:
Overview of Database
Design Methodology
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• List the steps of the conceptual design phase
(e.g., identifying entities, attribute domains,
relationships)
• Describe how to identify entities
• List ways to identify attributes and attribute
domains for entities
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• List ways to identify candidate and primary
keys for entities
• Identify and determine data relationships
• Create an entity-relationship (ER) diagram
• Analyze an entity-relationship (ER) diagram or
model to determine relation types
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Define and describe domains
• Explain the results of poor database design,
and describe insertion, deletion and update
anomalies in databases
• Describe database design steps, including
determining the proper steps in creating
entities, applying normalization, selecting a
database management system (DBMS)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Effects of Poor Database Design
• Insertion anomalies
• Deletion anomalies
• Update anomalies
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Database Design Phases
• Conceptual phase
• Logical phase
• Physical phase
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Conceptual Database Design
• Identifying entities
• Identifying attributes and attribute domains
for entities
• Identifying relationships
• Identifying candidate and primary keys for
entities
• Creating an entity-relationship (ER) diagram
• Reviewing the ER model by the user and
design team
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Entity-Relationship Models
•
•
•
•
Creating ER models
Defining domains
Common SQL data types
Determining data relationships
– Recursive relationships
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
List the steps of the conceptual design phase
(e.g., identifying entities, attribute domains,
relationships)
Describe how to identify entities
List ways to identify attributes and attribute
domains for entities
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
List ways to identify candidate and primary
keys for entities
Identify and determine data relationships
Create an entity-relationship (ER) diagram
Analyze an entity-relationship (ER) diagram or
model to determine relation types
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Define and describe domains
Explain the results of poor database design,
and describe insertion, deletion and update
anomalies in databases
Describe database design steps, including
determining the proper steps in creating
entities, applying normalization, selecting a
database management system (DBMS)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 5:
Normalization
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• Distinguish between specific normal forms,
including first normal form (1NF), second
normal form (2NF), third normal form (3NF),
Boyce-Codd normal form (BCNF)
• Describe the normalization process
• Define and explain determinant,
decomposition and functional dependency
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Describe database design steps, including
determining the proper steps in creating
entities, applying normalization, selecting a
database management system (DBMS)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
What Is Normalization?
• Normal forms
• First normal form
– First normal form anomalies
• Second normal form
– Second normal form anomalies
• Third normal form
• Boyce-Codd normal form
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Related Concepts
•
•
•
•
•
Decomposition
Atomic value
Partial functional dependency
Transitive dependency
Denormalization
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
Distinguish between specific normal forms,
including first normal form (1NF), second
normal form (2NF), third normal form (3NF),
Boyce-Codd normal form (BCNF)
Describe the normalization process
Define and explain determinant,
decomposition and functional dependency
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Describe database design steps, including
determining the proper steps in creating
entities, applying normalization, selecting a
database management system (DBMS)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 6:
Logical Database Design
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• Explain the structure and purpose of a data
dictionary
• Identify logical database design issues
• List the steps of the logical database design
phase (e.g., creating a raw data model;
identifying and documenting entities, attributes,
relationships, domains, and candidate and
primary keys)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Identify the cardinality of data relationships
• Identify and resolve inexpedient data
relationships
• Create an integrated logical data model from a
conceptual data model
• Use Data Definition Language (DDL)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Validate a logical data model against user
operations and system requirements
• Define integrity constraints (e.g., necessary data,
domain constraints, entity integrity, referential
integrity)
• Create corporate and enterprise data models
based on user views of data
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Validate the enterprise data model
• Describe database design steps, including
determining the proper steps in creating entities,
applying normalization, selecting a database
management system (DBMS)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Logical Database Design
• Logical data models
– One-to-one
– One-to-many
– Many-to-many
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Creating a Logical Data Model
Logical
Logical
datadata
model
model
creation
creation
Normalization
Normalization
Data model refinement
Data model refinement
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Using a Database Definition Language
• Data dictionaries
• Validating the logical data model
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Defining Integrity Constraints
•
•
•
•
•
Necessary data
Domain constraints
Entity integrity
Referential integrity
Enterprise constraints
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Creating an Enterprise Data Model
• User views
• Normalization
• Validating data operations
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
Explain the structure and purpose of a data
dictionary
Identify logical database design issues
List the steps of the logical database design
phase (e.g., creating a raw data model;
identifying and documenting entities, attributes,
relationships, domains, and candidate and
primary keys)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Identify the cardinality of data relationships
Identify and resolve inexpedient data
relationships
Create an integrated logical data model from a
conceptual data model
Use Data Definition Language (DDL)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Validate a logical data model against user
operations and system requirements
Define integrity constraints (e.g., necessary data,
domain constraints, entity integrity, referential
integrity)
Create corporate and enterprise data models
based on user views of data
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Validate the enterprise data model
Describe database design steps, including
determining the proper steps in creating entities,
applying normalization, selecting a database
management system (DBMS)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 7:
Physical Database Design
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• List the elements of physical database design
• Determine physical database design issues
• Describe how to create base relations for a
target database management system
(DBMS) using Data Definition Language (DDL)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Identify and create enterprise constraints for
a target DBMS
• Define secondary indexes and determine
when to use them
• Create a base relation
• Identify referential constraints
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Explain denormalization and describe when it
is necessary
• Create user views (e.g., the CREATE VIEW SQL
statement)
• Design database access rules
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Use appropriate commands to create, insert
and retrieve data from a database table,
including the SELECT, CREATE TABLE and
CREATE VIEW statements
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Physical Database Design
• Creating base relations for a target DBMS
• Data Definition Language
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Creating Enterprise Constraints
• Determining referential constraints
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Using Secondary Indexes
• A secondary index is a mechanism that
creates an additional key for a relation
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Denormalization
• The process of reuniting relations that were
split during the normalization process to
improve performance
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Creating User Views
• Determine the appropriate data to be
included with each particular view
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Designing Database Access Rules
• Identifiers
• Privileges
– SELECT
– UPDATE
– DELETE
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
List the elements of physical database design
Determine physical database design issues
Describe how to create base relations for a
target database management system
(DBMS) using Data Definition Language (DDL)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Identify and create enterprise constraints for
a target DBMS
Define secondary indexes and determine
when to use them
Create a base relation
Identify referential constraints
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Explain denormalization and describe when it
is necessary
Create user views (e.g., the CREATE VIEW SQL
statement)
Design database access rules
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Use appropriate commands to create, insert
and retrieve data from a database table,
including the SELECT, CREATE TABLE and
CREATE VIEW statements
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 8:
Structured Query Language
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• Perform data manipulation
• Describe basic SQL syntax
• List data types used in SQL, including SMALLINT,
DECIMAL (p, q), CHAR(n) and TIMESTAMP
• Define the term schema in relation to databases
• Create a schema using the CREATE SCHEMA
statement
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Drop schemas from a database using the DROP
SCHEMA statement
• Use appropriate commands to create, insert and
retrieve data from a database table, including
using the SELECT, CREATE TABLE and CREATE
VIEW statements
• Use the INSERT command appropriately
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Use appropriate UPDATE and DELETE statements
to update or delete information from a
database, including working with tuples
• Use the DISTINCT keyword
• Compose predicates and other statements using
the WHERE clause
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Identify the use and structure of Boolean
operators
• Describe SQL special operators and ORDER BY
clauses (e.g., the IN, BETWEEN and LIKE
operators)
• Deploy the ORDER BY clause to order output by
column or group of columns
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Retrieve data from relations using the SELECT
statement
• Create statements using the GRANT keyword to
control user access to relations
• Use the REVOKE keyword to limit access
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
SQL Basics
• Subsets of SQL
• SQL features
• Data types
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Data Definition Language
• Creating a schema
• Altering and dropping relations and views
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Data Manipulation Language
•
•
•
•
•
•
Inserting values into relations
Deleting records from relations
Updating values in relations
Retrieving data from relations
Aliases
SQL special operators and ORDER BY clauses
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Data Control Language
• Granting privileges
• Revoking privileges
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
Perform data manipulation
Describe basic SQL syntax
List data types used in SQL, including SMALLINT,
DECIMAL (p, q), CHAR9n) and TIMESTAMP
Define the term schema in relation to databases
Create a schema using the CREATE SCHEMA
statement
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Drop schemas from a database using the DROP
SCHEMA statement
Use appropriate commands to create, insert and
retrieve data from a database table, including
using the SELECT, CREATE TABLE and CREATE
VIEW statements
Use the INSERT command appropriately
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Use appropriate UPDATE and DELETE statements
to update or delete information from a
database, including working with tuples
Use the DISTINCT keyword
Compose predicates and other statements using
the WHERE clause
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Identify the use and structure of Boolean
operators
Describe SQL special operators and ORDER BY
clauses (e.g., the IN, BETWEEN and LIKE
operators)
Deploy the ORDER BY clause to order output by
column or group of columns
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Retrieve data from relations using the SELECT
statement
Create statements using the GRANT keyword to
control user access to relations
Use the REVOKE keyword to limit access
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 9:
Relational Algebra
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• Describe a selection operation
• Create a projection operation
• Explain and use a Cartesian product
operation
• Create unions
• Define a set difference operation
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
•
•
•
•
•
Describe an intersection operation
Create a theta-join
Use a natural join
Create an equi-join
Create an outer join
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Defining Relational Algebra
• Selection
• Projection
• Cartesian
product
•
•
•
•
Union
Difference
Intersection
Joins
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
Describe a selection operation
Create a projection operation
Explain and use a Cartesian product
operation
Create unions
Define a set difference operation
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Describe an intersection operation
Create a theta-join
Use a natural join
Create an equi-join
Create an outer join
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Lesson 10:
Transactions and Database Security
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives
• Define the concept of a transaction,
including use of the INSERT, DELETE and
UPDATE operations
• Identify the two results of a transaction
(commit and rollback)
• Describe the four desirable "ACID" properties
(atomicity, consistency, isolation, durability)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Define serializability in relation to a DBMS
• List concurrency control methods, including
locking and timestamps
• Describe the steps involved in optimistic
concurrency control (e.g., reading,
validation, writing), including knowing when
and when not to use optimistic concurrency
control
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• Identify issues that can occur if concurrency
control is not enacted property (e.g., dirty
reads, lost and uncommitted updates,
unrepeatable query results)
• Identify issues and determine the scope of
database security (e.g., theft, privacy,
integrity control, availability)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Objectives (cont’d)
• List typical security threats to databases
• Describe database countermeasure and
protection techniques (e.g., encryption, ways
to create views)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Transactions
• Commit
• Rollback
• ACID properties
– Atomicity
– Consistency
– Isolation
– Durability
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Concurrency Control
•
•
•
•
•
Lost updates
Uncommitted updates
Unrepeatable query results
Serializability
Concurrency control methods
– Locking
– Timestamps
• Optimistic concurrency control
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Database Security
• The scope of database security
• Types of security threats
• Types of protection techniques
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary
Define the concept of a transaction,
including use of the INSERT, DELETE and
UPDATE operations
Identify the two results of a transaction
(commit and rollback)
Describe the four desirable "ACID" properties
(atomicity, consistency, isolation, durability)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Define serializability in relation to a DBMS
List concurrency control methods, including
locking and timestamps
Describe the steps involved in optimistic
concurrency control (e.g., reading,
validation, writing), including knowing when
and when not to use optimistic concurrency
control
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
Identify issues that can occur if concurrency
control is not enacted property (e.g., dirty
reads, lost and uncommitted updates,
unrepeatable query results)
Identify issues and determine the scope of
database security (e.g., theft, privacy,
integrity control, availability)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Summary (cont’d)
List typical security threats to databases
Describe database countermeasure and
protection techniques (e.g., encryption, ways
to create views)
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Database Design Specialist
Introduction to Databases
Relational Database Fundamentals
Database Planning
Overview of Database Design Methodology
Normalization
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Database Design Specialist
Logical Database Design
Physical Database Design
Structured Query Language
Relational Algebra
Transactions and Database Security
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved
Database Design Specialist
• For information about the CIW Database
Design Specialist exam and certification, visit
www.CIWcertified.com
Database Design Specialist
Copyright © 2011 Certification Partners, LLC -- All Rights Reserved