2782 - Designing Microsoft SQL Server 2005 Databases
Prerequisites: Before attending this course, students must have:
Have experience reading user requirements and business-need documents. For example, development
project vision/mission statements or business analysis reports.
Have experience reading and drawing business process flow charts.
Have experience reading and drawing entity relationship (ER) diagrams.
Understand Transact-SQL syntax and programming logic.
Be able to design a database to 3NF and know the tradeoffs when backing out of the fully normalized
design (denormalization) and designing for performance and business requirements in addition to being
familiar with design models, such as Star and Snowflake schemas.
Have basic monitoring and troubleshooting skills.
Have basic knowledge of the operating system and platform. That is, how the operating system
integrates with the database, what the platform or operating system can do, and how interaction between
the operating system and the database works.
Have basic knowledge of application architecture. That is, how applications can be designed in three
layers, what applications can do, how interaction between the application and the database works, and
how the interaction between the database and the platform or operating system works.
Know how to use a data modeling tool.
Be familiar with SQL Server 2005 features, tools, and technologies.
Have a Microsoft Certified Technology Specialist: Microsoft SQL Server 2005 credential, or equivalent
experience.
Duration: 2 days
Module 1: Steps to Designing Databases for SQL Server 2005
Steps to Designing Stable Databases
Find a Plan and Stick To It
Know the Core Scope
Seek Knowledge
Create a Contract
Consider History..
Upgrade and Integrate
A Picture Is Worth…
ORM
ER
UML
Decision Making
Module 2: Logical Levels of Modeling
Move from Conceptual to Logical
Focus On Real World Dependencies
Primary Key: Substitutes or Real Attributes
Move Toward Logical ER
Model Theorys Functional Dependencies
Why Normalize?
Normalize How?
OLAP Designs
Creating the Fact Table
Creating Dimensions
Refactor a Logical Model
Module 3: Physical Levels of Modeling
Physical Levels of Modeling
Naming Conventions for Identifiers
Additional Naming Conventions for Identifiers
RDMS Specific Data Type Decisions
CLR Thoughts
XML Thoughts
How to Store – Character Type vs. New XML Type
Computed Columns Thoughts
Thoughts on Column Constraints
Thoughts on Table Constraints
New Data Definition Triggers
“Who Are You? What Do You Want?”
Protect the Data
Audits
Configuration Settings
Improve I/O Performance
Database Options
Sample Your Design
Extract-Transform-Load
Module 4: Performance Considerations to Make During Design
Clustered Index Thoughts
Non-Clustered Index Thoughts
Thoughts on XML Data Indexes
Thoughts on Computed Column Indexing
Why Use Views
Thoughts on Indexed Views
Benefit with Partition Tables
Thoughts on Summary Tables
You Might Denormalize Now
Thoughts on Snapshot Isolation
Tempdb Does a Lot of Work
Validate Database Solution
Module 5: Data Access Designs
SQL 2005 Provides Great Granularity of Permissions
Copyright (c) 2005 New Horizons - All Rights Reserved. Procomp Computer Services CC trading as New Horizons Computer Learning Centre. Registration No. 2002/029621/23