Detailed Course Outline
Module 1: Introduction to Database Development This module introduces database development and the key tasks that a database developer would typically perform. Lessons
- Introduction to the SQL Server Platform
- SQL Server Database Development Tasks
Lab : Introduction to Database Development After completing this module, you will be able to:
- Describe the architecture and editions of SQL Server 2012.
- Work with SQL Server tools.
- Configure SQL Server Services.
Module 2: Designing and Implementing Tables This module explains how to design, create, and alter tables. Also it focusses on working with schemas. Lessons
- Designing Tables
- Data Types
- Working with Schemas
- Creating and Altering Tables
- Partitioning Data
- Compressing Data
Lab : Designing and Implementing Tables After completing this module, you will be able to:
- Design Tables.
- Work with Schemas.
- Create and Alter Tables.
Module 3: 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. Lessons
- Enforcing Data Integrity
- Implementing Domain Integrity
- Implementing Entity and Referential Integrity
Lab : Ensuring Data Integrity through Constraints After completing this module, you will be able to:
- Explain the available options for enforcing data integrity and the levels at which they should be applied.
- Implement domain integrity.
- Implement entity and referential integrity.
Module 4: Introduction to Indexing This module describes the concept of an index and discusses selectivity, density and statistics. It covers appropriate data type choices and choices around composite index structures. Lessons
- Core Indexing Concepts
- Data Types and Indexes
- Single Column and Composite Indexes
Lab : Implementing Indexes After completing this module, you will be able to:
- Describe core indexing concepts.
- Choose appropriate data types for indexes.
- Design and implement clustered and nonclustered indexes.
Module 5: Designing Optimized Index Strategies This module explains covering indexes and the INCLUDE clause as well as the use of padding, hints and statistics. The module also covers the use of the Database Engine Tuning Advisor and index-related dynamic management views to assess indexing strategies. Lessons
- Covering Indexes
- Managing Indexes
- Working with Execution Plans
- Using the DTE
Lab : Designing Optimized Index Strategies After completing this module, you will be able to:
- Describe the elements of an execution plan.
- Design effective indexing strategies.
- Monitor your system to assess the performance of your indexing strategy.
Module 6: Columnstore Indexes This module explains columnstore indexes and how to use them to maximize the performance and scalability of database applications. Lessons
- Introduction to Columnstore indexes
- Creating Columnstore Indexes
- Working with Columnstore Indexes
Lab : Using Columnstore Indexes After completing this module, you will be able to:
- Create columnstore indexes.
- Describe the considerations for updating tables with non-clustered columnstore indexes.
Module 7: Designing and Implementing Views This module introduces Views, and explains how to create and manage Views. Also it focuses on the performance consideration for Views. Lessons
- Introduction to Views
- Creating and Managing Views
- Performance Considerations for Views
Lab : Designing and Implementing Views After completing this module, you will be able to:
- Explain the role of views in database development.
- Implement views.
- Describe the performance related impacts of views.
Module 8: Designing and Implementing Stored Procedures This module describes the potential advantages of the use of stored procedures along with guidelines on creating them. Lessons
- Introduction to Stored Procedures
- Working With Stored Procedures
- Implementing Parameterized Stored Procedures
- Controlling Execution Context
Lab : Designing and Implementing Stored Procedures After completing this module, you will be able to:
- Describe the role of stored procedures and the potential benefits of using them.
- Work with stored procedures.
- Implement parameterized stored procedures.
- Control the execution context of a stored procedure.
Module 9: 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. Lessons
- Overview of Functions
- Designing and Implementing Scalar Functions
- Designing and Implementing Table-Valued Functions
- Implementation Considerations for Functions
- Alternatives to Functions
Lab : Designing and Implementing User-Defined Functions After completing this module, you will be able to:
- Design and implement scalar functions.
- Design and implement table-valued functions.
- Describe implementation considerations for functions.
- Describe alternatives to functions.
Module 10: 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. Lessons
- Designing DML Triggers
- Implementing DML Triggers
- Advanced Trigger Concepts
Lab : Responding to Data Manipulation via Triggers After completing this module, you will be able to:
- Design DML triggers.
- Implement DML triggers.
- Explain advanced DML trigger concepts.
Module 11: Using In-Memory Tables This module covers the creation of in-memory tables and native stored procedures and discusses the advantages and disadvantages of using in-memory tables. Lessons
- In-Memory Tables
- Native Stored Procedures
Lab : In-Memory OLTP After completing this module, you will be able to:
- Design and implement memory-optimized tables.
- Create native stored procedures.
Module 12: Implementing Managed Code in SQL Server 2014 This module explains how to use CLR integrated code to create user-defined database objects that are managed by the .NET Framework. Lessons
- Introduction to SQL CLR Integration
- Importing and Configuring Assemblies
- Implementing SQL CLR Integration
Lab : Implementing Managed Code in SQL Server 2014 After completing this module, you will be able to:
- Explain the importance of SQL Server CLR Integration.
- Import and configure assemblies.
- Implement objects that have been created within .NET assemblies.
Module 13: Storing and Querying XML Data in SQL Server This module introduces XML and shows how XML data can be stored within SQL Server and then queried, including queries written in a language called XQuery. Lessons
- Introduction to XML and XML Schemas
- Storing XML Data and Schemas in SQL Server
- Implementing the XML Data Type
- Using the T-SQL FOR XML Statement
- Getting Started with XQuery
Lab : Storing and Querying XML Data in SQL Server 2014 After completing this module, you will be able to:
- Describe XML and XML schemas.
- Store XML data and associated XML schemas in SQL Server.
- Implement the XML data type within SQL Server.
- Use the T-SQL FOR XML Statement.
- Work with basic XQuery queries.
- Shred XML to a relational form.
Module 14: Working with SQL Server 2014 Spatial Data This module introduces Spatial Data, and explains how to work with SQL Server Spatial Data Types. Lessons
- Introduction to Spatial Data
- Working with SQL Server Spatial Data Types
- Using Spatial Data in Applications
Lab : Working with SQL Server Spatial Data After completing this module, you will be able to:
- Describe the importance of spatial data and the industry standards related to it.
- Explain how to store spatial data in SQL Server.
- Perform calculations on and query SQL Server spatial data.
Module 15: Incorporating Data Files into Databases Lessons
- Querying Data with Stored Procedures
- Implementing FILESTREAM and File Tables
- Searching Data Files
Lab : Implementing a Solution for Storing Data Files