Microsoft
SQL Server 2000 : Database Design
Course Specifications
Course number: 077462
Course length: 5 days
Software Version Number: 2000
Course Description
Overview: This course teaches you how to use the
Transact-SQL language to query and program Microsoft SQL Server 2000 in a
Windows 2000 Server environment. This course also assists you in preparing for
the Microsoft Certified Systems Engineer and Microsoft Certified Database
Administrator Exam #70-229, Designing and Implementing Databases with Microsoft
SQL Server 2000 Enterprise Edition.
Prerequisites: To ensure your success, we recommend
you first take the following Element K courses or have equivalent knowledge:
Performance-Based
Objectives
Lesson objectives help students become comfortable with the course, and also
provide a means to evaluate learning. Upon successful completion of this
course, students will be able to:
Course Content
Lesson 1: An Overview of SQL Server
Topic 1A: Exploring the
Components of SQL Server
Task 1A-1: Exploring the Features of Microsoft SQL Server
Task 1A-2: Exploring the SQL Server Services
Task 1A-3: Identifying Administrative Utilities
Task 1A-4: Using SQL Server Enterprise Manager
Task 1A-5: Using SQL Query Analyzer
Topic 1B: SQL Server
Database Structure
Task 1B-1: Discussing the Components of SQL Server
Task 1B-2: Identifying the Default Databases and System Tables
Task 1B-3: Creating and Working with a Database Diagram
Topic 1C:
Task 1C-1: Understanding the SQL Server Architecture
Task 1C-2: Exploring the Application Architecture
Topic 1D: Identifying
SQL Server Management Tasks
Task 1D-1: Determining SQL Server Management Tasks
Task 1D-2: Configuring Your Server’s Authentication Mode
Task 1D-3: Creating a SQL Login Account
Task 1D-4: Working With Server and Database Roles
Lesson 2: Exploring Transact-SQL
Topic 2A: Working with
Transact-SQL
Task 2A-1: Using SQL Query Analyzer
Task 2A-2: Using Osql
Topic 2B: Transact-SQL
Statements
Task 2B-1: Creating a Simple Table
Task 2B-2: Inserting Data
Task 2B-3: Selecting Data
Task 2B-4: Assigning Permissions to the Public Database Role
Topic 2C: Programming in
Transact-SQL
Task 2C-1: Using Variables
Task 2C-2: Saving a Script File
Task 2C-3: Choosing an XML Format
Lesson 3: Designing and Implementing
Databases
Topic 3A: Identifying
Database Design Issues
Task 3A-1: Designing Databases
Task 3A-2: Identifying the Space Requirements for Databases
Task 3A-3: Optimizing Database Performance
Topic 3B: Creating
Databases
Task 3B-1: Setting Database Options
Task 3B-2: Using Stored Procedures to View Database Information
Topic 3C: Managing
Databases
Task 3C-1: Configuring SQL Server to Automatically Shrink a DatabaseFile
Task 3C-2: Deleting a Database
Lesson 4: Creating and Managing Tables
Topic 4A: Design and
Create Tables
Task 4A-1: Normalizing Table Designs
Topic 4B: Maintaining
Tables
Task 4B-1: Using SQL Server Enterprise Manager to Generate a Script
Lesson 5: Designing and Implementing Data
Integrity
Topic 5A: Understanding
Data Integrity
Topic 5B: Implementing
Constraints
Task 5B-1: Adding a Primary Key Constraint
Task 5B-2: Adding a Foreign Key Constraint to the Movie Table
Task 5B-3: Adding a Default Constraint to the Movie Table
Task 5B-4: Adding a Check Constraint to the Movie Table
Task 5B-5: Disabling Constraint Checking
Lesson 6: Implementing Indexes
Topic 6A: Designing
Indexing
Task 6A-1: Understanding Index Architecture
Topic 6B: Implementing
Indexes
Task 6B-1: Creating a Clustered Index on the Movie Table
Task 6B-2: Viewing the Information in Sysindexes
Topic 6C: Maintaining
Indexes
Task 6C-1: Rebuilding an Index
Task 6C-2: Using DROP_EXISTING to Re-create an Index Based on a PrimaryKey
Task 6C-3: Generating a Workload File in SQL Profiler
Task 6C-4: Observing Index Statistics
Lesson 7: Joining Tables
Topic 7A: Querying
Multiple Tables
Task 7A-1: Working with Cross Joins
Topic 7B: Implementing
Advanced Table Joins
Task 7B-1: Joining Multiple Tables
Task 7B-2: Working with Self Joins
Task 7B-3: Combining SELECT Statements
Task 7B-4: Creating a New Table Based on a SELECT INTO Statement
Lesson 8: Designing Advanced Queries
Topic 8A: Designing
Subqueries
Task 8A-1: Designing Single Value Subqueries
Topic 8B: Changing Data
Through Queries
Task 8B-1: Inserting Data Based on a Query
Task 8B-2: Deleting Rows Based on a Query
Lesson 9: Designing Views
Topic 9A: Creating and
Managing Views
Task 9A-1: Creating a View
Task 9A-2: Displaying View Information
Task 9A-3: Dropping a View
Task 9A-4: Creating an Indexed View
Task 9A-5: Creating a Partitioned View
Lesson 10: Creating Stored Procedures
Topic 10A: Designing
Stored Procedures
Task 10A-1: Using Books Online to Research System Stored Procedures
Task 10A-2: Running Extended Stored Procedures
Task 10A-3: Understanding How SQL Server Processes Stored Procedures
Topic 10B: Creating
Stored Procedures
Task 10B-1: Creating a Stored Procedure
Task 10B-2: Executing a Stored Procedure
Topic 10C: Using
Parameters in Stored Procedures
Task 10C-1: Creating a Stored Procedure With an Input Parameter
Task 10C-2: Creating and Executing a Stored Procedure With Output Parameters
Topic 10D: Managing
Stored Procedures
Task 10D-1: Recompiling a Stored Procedure
Lesson 11: Using Functions
Topic 11A: Working with
Aggregate Functions
Task 11A-1: Using Aggregate Functions to Summarize Data
Task 11A-2: Designing GROUP BY Queries
Task 11A-3: Using TOP in a Query
Topic 11B: Designing and
Creating User-defined Functions
Task 11B-1: Dropping a User-defined Function
Lesson 12: Creating Triggers
Topic 12A: Designing and
Implementing Triggers
Task 12A-1: Designing Triggers
Task 12A-2: Creating an INSERT Trigger
Task 12A-3: Creating a DELETE Trigger
Task 12A-4: Creating an INSTEAD OF Trigger
Lesson 13: Understanding Transactions and
Locks
Topic 13A: Designing and
Implementing Transactions
Task 13A-1: Working with Explicit Transactions
Topic 13B: Managing
Locks
Task 13B-1: Observing the Current Locks on Your Server
Task 13B-2: Implementing Session Locking
Task 13B-3: Implementing a Lock Timeout
Task 13B-4: Implementing Table-level Locking
Lesson 14: Implementing Distributed Queries
Topic 14A: Establishing
Linked Servers
Task 14A-1: Defining a Linked Server
Task 14A-2: Logging in to Linked Servers
Topic 14B: Creating and
Managing Distributed Queries
Task 14B-1: Configuring the MSDTC Service
Task 14B-2: Using Ad Hoc Queries to Retrieve Data From Remote Servers
Lesson 15: Optimizing Queries
Topic 15A: Exploring the
Query Optimizer
Task 15A-1: Configuring the Query Governor
Task 15A-2: Using SHOWPLAN to View the Query Execution Plan
Task 15A-3: Analyzing a Graphical Execution Plan
Topic 15B: Using Indexes
to Optimize Queries
Task 15B-1: Designing Indexing
Lesson 16: Analyzing Queries
Topic 16A: Analyzing the
Performance of Queries
Appendix A: The Movies Database Structure
Table Design
Appendix B: Course Script Files
Using the Course SQL Script Files