The following are current abstracts that I have prepared for presenting at SQL Server users groups, SQL Saturdays, or other SQL events.
When Database Corruption Strikes
You are working along month after month with no problems in your database. Suddenly someone reports that their query won’t run. They get an error stating “SQL Server detected a logical consistency-based I/O error“, or something even scarier. Do you know what to do now? We will walk through 3 or 4 actual corrupt databases exploring ways to go about finding and fixing the corruption. More importantly we will explore how to prevent further data loss at the time corruption occurs. Learn what things you should do to protect yourself when corruption strikes. Learn what to avoid that will make things worse. You will leave with a checklist of steps to take when you encounter corruption. By the end of this session you will be ready to take on corruption, one database at a time.
Notes (not part of the abstract): The database corruption presentation is based on my experiences running the weekly SQL Server Database Corruption Challenge. The corruption challenge is a weekly event that I run to the SQL community be ready to react when they encounter database corruption.
Introduction to Policy Based Management
Many of the things a DBA needs to monitor on a regular basis can be performed with Policy Based Management. Mistakes made by junior DBAs or developers who don’t understand the database policies can be caught and prevented with Policy Based Management. As a built-in feature in SQL Server, Policy Based Management is often overlooked. Learn about policies, facets, and conditions. With more demo than slides, this session will show you what you need to know to get started with Policy Based Management in your organization. By the end of this session you will have a solid understanding of what Policy Based Management is, when you should use it, and how to use it appropriately. This session is also a good prep for some material in the 70-462 Administering Microsoft SQL Server exam.
Exploring SQL Server Join Types – INNER, OUTER, and much more
Joining tables is one of the fundamental aspects of any relational database, but the different ways of joining tables are often misunderstood. Learn about INNER JOINS, OUTER JOINS (LEFT, RIGHT and FULL), OUTER JOIN with exclusions, CROSS JOIN. Also find out how multiple INNER JOINS impact your result set versus multiple OUTER JOINS. By the end of this presentation you will at a minimum you will be able to answer that common interview of “explain the difference between an INNER JOIN and an OUTER JOIN”
Notes (not part of the abstract): This session will be presented at SQL Saturday Redmond 5/16/2015. This session is based on a free poster that I created to help explain JOINs. I have presented this session twice at small group settings.
Common Table Expressions – Introduction
Have you ever wanted to create a recursive query, but didn’t see how to do it. With the Common Table Expressions session you will learn everything needed to start using CTE’s for recursive queries, as temporary views, and to use the result set multiple times in the same query. Learn how simplify query syntax using CTE’s. One of the most overlooked features of SQL Server is the CTE which not only simplifies the query, but gives you the ability to do things that would otherwise be impossible (or at least very challenging) with SQL Server. The class is designed for people who haven’t used CTE’s before, or for those who want to learn the basics of CTEs including data paging.
Common Table Expressions – Advanced
You have been introduced to Common Table Expression, you understand the WITH syntax, but you want to know more. Learn how to recursive queries work with CTEs and how to display hierarchical data. Did you know that you can INSERT, UPDATE and DELETE data from CTEs. Some of the common use cases for CTEs will be covered including finding holes in patterns, finding and removing duplicate data, string parsing, and more. See how CTEs compare to SQL Server 2012 offset and fetch paging techniques. Get an in depth understanding of the performance behind a common table expression. Understand when the CTE is the right solution, and the wrong solution to use. Finally we will take a look at some classic recursive algorithms and how they can be implemented with CTEs.