THIS COURSE DRAFT IS A WORK IN PROGRESS AND IS NOT FOR DISTRIBUTION OR SHARING
This course will guide SQL Server DBAs and Developers on a journey into the world of Agile development, DevOps methodologies, and CI/CD automations, and teach how to integrate their SQL Server Database into a modern development lifecycle.
Maybe you’ve seen Eitan Blumin’s free online webinar sessions from the CI and CD with SSDT series.
But did you know that there’s still so much more to learn? 🎓
The course covers essential aspects of SSDT and SQL Server DevOps. 💡 It addresses key concepts such as source control, development methodologies, 👩💻CI/CD, database unit testing, 🧪 different deployment methodologies, 🚀 and troubleshooting common errors. ⚠ It also includes practical modules on using SSDT tools and features, 🛠 automation with command-line and PowerShell, integration with Azure DevOps, and extends into related areas such as test data management and SQL BI DevOps. 📊
The modules are logically organized, starting with introductory concepts and gradually progressing to more advanced topics. This structure allows learners to build a strong foundation before delving into complex subjects.
Join this course to unlock premium content that will fling your database development skills into the modern technological forefront! 🛰
From Zero 0️⃣ to Hero 🦸♀️🦸♂️
From Starting 👶 to Starring 🤩
From Beginner 🤔 to Expert 😎
Covered End-to-End 🔁
Fill out the form below to enroll:
Curriculum
- 9 Sections
- 68 Lessons
- 10 Weeks
- Lesson 1: Introduction to DevOps and Change ManagementOne of the core components of Agile development is DevOps. DevOps is essentially Change Automation. Change Automation works best when using Source Control. If these buzz words don't mean anything to you, then you should start here :)3
- Lesson 2: Development Lifecycle BasicsAre you new to Agile methodologies and working with Source Control? Then this is the module for you. It covers all the essential basics that you can't do without.9
- 2.0Module 2.1. Development Methodologies vs. Deployment Methodologies
- 2.1Module 2.2. What are Deployment/Environment Stages?
- 2.2Module 2.3. What is Git Source Control?
- 2.3Module 2.4. How to work with Git and Visual Studio?
- 2.4Module 2.5. What is a Unit Test?
- 2.5Module 2.6. What is an Artifact?
- 2.6Module 2.7. What is CI/CD?
- 2.7Module 2.8. What are Build Pipelines and Release Pipelines?
- 2.8Practice A: Working with Git Source Control
- Lesson 3: Database DevOps MethodologiesThere are many different methodologies and approaches to implementing DevOps for databases. Unless we're familiar with them, we wouldn't know which one works best for our organization.9
- 3.0Module 3.1. What is Online Database Development?
- 3.1Module 3.2. What is Offline Database Development?
- 3.2Module 3.3. What is Migration-Based Deployment?
- 3.3Module 3.4. What is State-Based Deployment?
- 3.4Module 3.5. What are Database Unit Tests?
- 3.5Module 3.6. What are Zero-Downtime Deployment Methodologies?
- 3.6Module 3.7. What to Store In Which Repository?
- 3.7Module 3.8. Security Risks and Considerations of Database DevOps
- 3.8Practice B: Choosing the Right Methodology in Real-World Use Cases
- Lesson 4: Basics of SSDT (SQL Server Data Tools)Meet SSDT (SQL Server Data Tools), an effective tool for integrating the database with the software development lifecycle. Source control, version history, unit testing, and CI/CD... SSDT comes with an answer for all.7
- 4.0Module 4.1. What is SQL Server Data Tools (SSDT)?
- 4.1Module 4.2. What is supported and not supported by SSDT?
- 4.2Module 4.3. How to Install SSDT?
- 4.3Module 4.4. What are the SSDT Methodologies?
- 4.4Module 4.5. How SSDT Deployments Work?
- 4.5Practice C: Installing SSDT for Visual Studio, VSCode, and Azure Data Studio
- 4.6Module 4.6. What’s New in SSDT?
- Lesson 5: Deep-Dive into the Tools & Features of SSDTIn this module, we will cover the rich tools, features, and concepts in SSDT that allow DBAs to implement a continuous database development lifecycle.14
- 5.0Module 5.1. Overview of SSDT Tools and Features
- 5.1Module 5.2. Creating a SQL Database Project
- 5.2Module 5.3. Database Dependencies and References
- 5.3Module 5.4. Pre-Deployment and Post-Deployment Scripts
- 5.4Module 5.5. SQL CLR Development
- 5.5Practice D: Creating Your First SQL Database Project
- 5.6Module 5.6. The Refactor Tool
- 5.7Practice E: Making Changes to Your First SQL Database Project
- 5.8Module 5.7. Schema and Data Compare
- 5.9Module 5.8. Publish Profiles and SQLCMD Variables
- 5.10Practice F: Deploying Your First SQL Database Project
- 5.11Module 5.9. SSDT Unit Tests
- 5.12Practice G: Unit Testing Your First SQL Database Project
- 5.13Module 5.10. The SDK-Style Project in VS Code and Azure Data Studio
- Lesson 6: Troubleshooting Common SSDT ErrorsLearn How To Do It Right, how to deal with common problems while starting with SSDT for the first time, various problematic edge cases, and how to solve them.9
- 6.0Module 6.1. Deployment-Aware Development
- 6.1Module 6.2. Object Reference Errors in SSDT
- 6.2Module 6.3. Unsupported Object Types and How to Support Them
- 6.3Module 6.4. Idempotent Data Deployments
- 6.4Module 6.5. Interoperability – Replication, CDC, Partitioning, and More
- 6.5Module 6.6. SQL-CLR Digital Signing
- 6.6Module 6.7. Troubleshooting SSDT Deployments
- 6.7Module 6.8. Abnormal Edge Cases
- 6.8Practice H: Troubleshooting a SQL Database Deployment
- Lesson 7: Automating SSDT DeploymentsYou got your first SQL Database Project, and you can even build and deploy it manually. But this is not what DevOps is all about. Not yet. A critical ingredient that we must learn is - automation.7
- 7.1Module 7.1. + Practice I: Automating SSDT Deployments using Command Line
- 7.2Module 7.2. + Practice J: Automating SSDT Deployments using Powershell and DbaTools
- 7.3Module 7.3. Dry runs in SSDT (Generate Report, Generate Script)
- 7.4Module 7.4. + Practice K: Automating SSDT Deployments using Azure DevOps
- 7.5Module 7.5. + Practice L: Automating SSDT Deployments to Azure SQL DB
- 7.6Module 7.6. + Practice M: Automating SSDT Deployments to SQL on VM/On-Prem
- 7.7Module 7.7. + Practice N: Automating SSDT Unit Tests
- Lesson 8: Taking Offline Database Development To The Next LevelIn this section, we will learn some advanced techniques to implement better offline database development environments, and make life even easier for our database developers.4
- Lesson 9: SSDT for SQL BI DevOpsDatabase DevOps in SQL Server is not just about the database itself. SSDT also covers support for various BI projects that we need to talk about. We'll also talk about non-SSDT cloud-native technologies such as Power BI and Azure Data Factory.6
Requirements
- Basic experience with SQL Server database design and development
- Basic experience with SQL querying
- Basic experience with T-SQL programming
Target audiences
- SQL Server Database Developers
- SQL Server Database Administrators
- CTOs, PMs, and DevOps Engineers looking to integrate SQL Databases into their pipelines