Overview
This five day, instructor-led course introduces participants to SQL Server 2014, and discusses the logical table design, indexing and query plans. The course focusses on teaching the participants about creating database objects including views, stored procedures, along with parameters and functions. The course also discusses common aspects of procedure coding, such as, indexes, concurrency, error handling and triggers. The course is a good fit for individuals interested in learning SQL Server 2012 as well as SQL Server 2014.
What You'll Learn
- Introduce the entire SQL Server platform and its major tools
- 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
- 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
- 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
Curriculum
- Introduction to the SQL Server Platform
- SQL Server Database Development Tasks
- Lab : Introduction to Database Development
- Designing Tables
- Data Types
- Working with Schemas
- Creating and Altering Tables
- Partitioning Data
- Compressing Data
- Lab : Designing and Implementing Tables
- Enforcing Data Integrity
- Implementing Domain Integrity
- Implementing Entity and Referential Integrity
- Lab : Ensuring Data Integrity through Constraints
- Core Indexing Concepts
- Data Types and Indexes
- Single Column and Composite Indexes
- Covering Indexes
- Managing Indexes
- Working with Execution Plans
- Using the DTE
- Lab : Designing Optimized Index Strategies
- Columnstore Indexes
- Working with Columnstore Indexes
- Lab : Using Columnstore Indexes
- Introduction to Views
- Creating and Managing Views
- Performance Considerations for Views
- Lab : Designing and Implementing Views
- Introduction to Stored Procedures
- Working With Stored Procedures
- Implementing Parameterized Stored Procedures
- Controlling Execution Context
- Lab : Designing and Implementing Stored Procedures
- 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
- Designing DML Triggers
- Implementing DML Triggers
- Advanced Trigger Concepts
- Lab : Responding to Data Manipulation via Triggers
- In-Memory Tables
- Native Stored Procedures
- Lab : In-Memory OLTP
- Introduction to SQL CLR Integration
- Importing and Configuring Assemblies
- Implementing SQL CLR Integration
- Lab : Implementing Managed Code in SQL Server 2014
- 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
- Introduction to Spatial Data
- Working with SQL Server Spatial Data Types
- Using Spatial Data in Applications
- Lab : Working with SQL Server Spatial Data
- Querying Data with Stored Procedures
- Implementing FILESTREAM and File Tables
- Searching Data Files
- Lab : Implementing a Solution for Storing Data Files
Who should attend
The course is highly recommended for –
- System engineers
- Software engineers
- Database administrators
- Software developers
- Database architects