M10776 - Developing Microsoft SQL Server 2012 Databases — A 5 day course
This course has been retired. Please review the M20464 Developing Microsoft SQL Server Databases course instead.
The Microsoft M10776 5-day instructor-led course introduces SQL Server 2012 and describes logical table design, indexing and query plans. It also focusses on the creation of database objects including views, stored procedures, along with parameters, and functions. Other common aspects of procedure coding, such as transactions, concurrency, error handling, triggers, and SQL CLR are also covered in this course. The Beta version of the Microsoft MS10776 course utilizes pre-release software in the virtual machine for the labs. Microsoft SQL Server 2012 Release Candidate 0 (RC0) is used in this course. Some of the exercises in this course are SQL Azure enabled. Due to content overlap, delegates who have attended course M6232 should not attend this course.
On completion of the Microsoft 10776 training course, delegates should be able to:
- Introduce the entire SQL Server platform and its major tools. It will cover editions, versions, basics of network listeners, and concepts of services and service accounts
- Determine appropriate data types to be used when designing tables, convert data between data types, and create alias data types
- Be aware of good design practices regarding SQL Server tables and be able to create tables using T-SQL. (Note: partitioned tables are not covered)
- Implement PRIMARY KEY, FOREIGN KEY, DEFAULT, CHECK and UNIQUE constraints, and investigate cascading FOREIGN KEY constraints
- Determine appropriate single column and composite indexes strategies
- Create tables as heaps and tables with clustered indexes. Also consider the design of a table and suggest an appropriate structure
- Read and interpret details of common elements from execution plans
- Design effective non-clustered indexes
- Design and implement views
- Design and implement stored procedures
- Work with table types, table valued parameters and use the MERGE statement to create stored procedures that update data warehouses
- Design and implement functions, both scalar and table-valued. (Also describe where they can lead to performance issues)
- Perform basic investigation of a deadlock situation and learn how transaction isolation levels affect application concurrency
- Use both traditional T-SQL error handling code and structured exception handling
- Design and implement DML triggers
- Learn appropriate uses for SQL CLR integration and implement an existing .NET assembly within SQL Server
- Store XML data and schemas in SQL Server
- Perform basic queries on XML data in SQL Server
- Work with the GEOGRAPHY and GEOMETRY data types
- Implement and query a full-text index
The primary audience for this course is IT Professionals who want to become skilled on SQL Server 2012 product features and technologies for implementing a database.
Knowledge of writing T-SQL queries
Knowledge of basic relational database concepts OR
Attend M10774: Writing T-SQL Queries for Microsoft SQL Server 2012
This course has been retired and is no longer available.
Introduction to SQL Server 2012 and its Toolset
This module stresses on the fact that before beginning to work with SQL Server in either a development or an administration role, it is important to understand the overall SQL Server platform. In particular, it is useful to understand that SQL Server is not just a database engine but it is a complete platform for managing enterprise data.
- Introduction to the SQL Server Platform
- Working with SQL Server Tools
- Configuring SQL Server Services
Working with Data Types
This module explains how to use and convert data types. Also it focusses on how to work with specialized data types, and character data types.
- Using Data Types
- Working with Character Data
- Converting Data Types
- Specialized Data Types
Designing and Implementing Table
This module explains how to design, create, and alter tables. Also it focusses on working with schemas.
- Designing Tables
- Working with Schemas
- Creating and Altering Tables
Ensuring Data Integrity through Constraints
This module explains how to enforce data integrity, and implement domain integrity to maintain high quality data. Also it focusses on implementing Entity and Referential Integrity.
- Enforcing Data Integrity
- Implementing Domain Integrity
- Implementing Entity and Referential Integrity
Planning for SQL Server 2012 Indexing
This module explains the core indexing concepts and effectiveness of each data type commonly used in indexes.
- Core Indexing Concepts
- Data Types and Indexes
- Single Column and Composite Indexes
Implementing Table Structures in SQL Server 2012
This module explains how tables can be structured in SQL Server databases. Also it focusses on designing and working with clustered indexes.
- SQL Server Table Structures
- Working with Clustered Indexes
- Designing Effective Clustered Indexes
Reading SQL Server 2012 Execution Plans
This module explains how to design additional indexes. Also it focusses on how to read and interpret execution plans.
- Execution Plan Core Concepts
- Common Execution Plan Elements
- Working with Execution Plans
Improving Performance through Nonclustered Indexes
This module explains how nonclustered indexes have the potential to significantly enhance the performance of applications and how to use a tool that can help design these indexes appropriately.
- Designing Effective Nonclustered Indexes
- Implementing Nonclustered Indexes
- Using the Database Engine Tuning Advisor
Designing and Implementing Views
This module introduces Views, and explains how to create and manage Views. Also it focusses on the performance consideration for Views.
- Introduction to Views
- Creating and Managing Views
- Performance Considerations for Views
Designing and Implementing Stored Procedures
This module describes the potential advantages of the use of stored procedures along with guidelines on creating them.
- Introduction to Stored Procedures
- Working With Stored Procedures
- Implementing Parameterized Stored Procedures
- Controlling Execution Context
Merging Data and Passing Tables
This module reviews the techniques that provide the ability to process sets of data rather than individual rows. Also it focusses on how these techniques can be used in combination with TABLE parameter types to minimize the number of required stored procedure calls in typical applications.
- Using the MERGE Statement
- Implementing Table Types
- Using TABLE Types As Parameters
Designing and Implementing User-Defined Functions
This module explains how to design and implement user-defined functions that enforce business rules or data consistency, and modify and maintain existing functions written by other developers.
- Overview of Functions
- Designing and Implementing Scalar Functions
- Designing and Implementing Table-Valued Functions
- Implementation Considerations for Functions
- Alternatives to Functions
Creating Highly Concurrent SQL Server 2012 Applications
This module explains how to use transactions and the SQL Server locking mechanisms to meet the performance and data integrity requirements of your applications.
- Introduction to Transactions
- Introduction to Locks
- Management of Locking
- Transaction Isolation Levels
Handling Errors in T-SQL Code
This module explores T-SQL error handling, looks at how it has traditionally been implemented, and how structured exception handling can be used.
- Understanding T-SQL Error Handling
- Implementing T-SQL Error Handling
- Implementing Structured Exception Handling
Responding to Data Manipulation via Triggers
This module, explains what DML triggers are and how they enforce data integrity. Also it focusses on the different types of triggers available, and how to define triggers in a database.
- Designing DML Triggers
- Implementing DML Triggers
- Advanced Trigger Concepts
Implementing Managed Code in SQL Server 2012
This module explains how to use CLR integrated code to create user-defined database objects that are managed by the .NET Framework.
- Introduction to SQL CLR Integration
- Importing and Configuring Assemblies
- Implementing SQL CLR Integration
Storing XML Data in SQL Server 2012
This module introduces XML and shows how XML data can be stored within SQL Server.
- Introduction to XML and XML Schemas
- Storing XML Data and Schemas in SQL Server
- Implementing the XML Data Type
Querying XML Data in SQL Server
This module shows how XML data can be queried, including queries written in a language called XQuery.
- Using the T-SQL FOR XML Statement
- Getting Started with XQuery
- Shredding XML
Working with SQL Server 2012 Spatial Data
This module introduces Spatial Data, and explains how to work with SQL Server Spatial Data Types.
- Introduction to Spatial Data
- Working with SQL Server Spatial Data Types
- Using Spatial Data in Applications
Working with Full-Text Indexes and Queries
This module introduces Full-Text Indexing and how to implement Full-Text Indexes in SQL Server.
- Introduction to Full-Text Indexing
- Implementing Full-Text Indexes in SQL Server
- Working with Full-Text Queries