This section includes presentation slides and sample code from recent presentations.  All content is provided as-is and is permitted for private use.

Usage & Copyright: All content is the property of Anil Desai.  Downloads are intended for individual use only and may not be made available on another site or service without permission.

SQL Server Optimization for Developers

Austin .NET User’s Group (April, 2014)

Database optimization is a critical component of overall application performance, and sub-optimal configurations can limit reliability, scalability, and the user experience. Unfortunately, many developers see database monitoring and optimization as a black art – something that’s better left to production and operations specialists. This presentation will focus on practical, real-world methods for monitoring and optimizing performance for SQL Server-based applications. Demonstrations will include understanding index types, capturing query data with SQL Profiler, analyzing indexes and using the Database Engine Tuning Advisor. In addition to live demos the content will focus on managing locking, managing schema changes, and application design best practices for developers.

SQL Saturday #35 (May, 2010)

SQL Server Basics for non-DBAs

Despite the importance and value of relational databases, many developers and administrators often have only a basic understanding of how they work.  This session covers the basic architecture of SQL Server, including basic installation and configuration of the server.  The focus will be an overview of the most important topics, including: Managing database storage, performing regular database maintenance, managing security and data protection.  Finally, we’ll conclude with some best practices for managing database schemas and objects.  Attendees are encouraged to bring their server and database management questions.

SQL Server Reporting Services: Develop & Deploy Reports

This session will begin with a brief architectural overview of Reporting Services and details on getting up and running with Reporting Services.  Then, we will look at demonstrations of creating new reports by building connections and data sets using Report Builder and Visual Studio.  Reporting design features including parameterization, dynamic drill-downs, matrix reports, charts, and sorting will be provided.

Austin CodeCamp 2010 (May, 2010)

SQL Server Reporting Services: Develop & Deploy Reports

This session will begin with a brief architectural overview of Reporting Services and details on getting up and running with Reporting Services. Then, we will look at demonstrations of creating new reports by building connections and data sets using Report Builder and Visual Studio. Reporting design features including parametrization, dynamic drill-downs, matrix reports, charts, and sorting will be provided.

Next, we’ll look at deployment details, including scheduling reports, configuring caching, creating snapshots, and managing security. Time permitting, the presentation will include a demonstration of using Report Viewer controls within ASP.NET and Windows Forms applications. The session is intended for developers that have basic familiarity with report development (in any technology) and a basic understanding of SQL.

Practical SQL Server Performance Monitoring & Optimization

Developers can dramatically improve performance by monitoring and analyzing real world queries. This session covers SQL Server monitoring at various levels to the most impactful performance improvements. The presentation will start with an overview of different optimization tools and techniques and will be based on practical examples of real-world performance monitoring and troubleshooting. Details include the use of server monitoring tools, SQL Profiler, the Database Tuning Advisor, and analyzing query plans, Dynamic Management Views, and related methods. The overall emphasis will be on solving practical, real-world database performance problems.

This session assumes that attendees have basic familiarity with SQL Server and with writing database queries.

Past Presentations

  • Developing Solutions with SQL Server Reporting Services: This presentation covers details related to creating and managing reports using the Reporting Services platform.  Topics include building reports, sorting, grouping, and scheduling report execution.  Also available are some Sample Reports (you will need the Business Intelligence Development Studio and access to the AdventureWorks sample database in order to view or edit the reports).



  • Monitoring and Optimizing SQL Server 2005 Performance: Tools and techniques for monitoring and improving SQL Server performance.  The presentation covers the development of a performance optimiziation approach, using SQL Profiler, using the Database Engine Tuning Wizard, and related topics.

  • Securing SQL Server 2005: Details about the security architecture of SQL Server 2005, including security principals, securables, and permissions.  Includes information about managing SQL Server logins and database users, encryption, and working with schemas.

  • Sample SQL Scripts [.zip file]:  This file contains all of the SQL script files that I used during the demonstations in the presentations, along with some additional sample code.  Please note that the code is provided as an example only, and that you should thoroughly test and review statements before running them in a production environment.

Also, you can find much more in-depth information about working with SQL Server 2005 in my SQL Server 2005 Implementation and Maintenance (Exam 70-431) Training Course from Keystone Learning and from Reporting Services Guru.

Feel free to let me know if you have any questions, comments, or other feedback!