SlideShare a Scribd company logo
1 of 22
Continuous Integration
for Databases
Umesh Kumar
Agenda
● Challenges with Database Deployment
● How are these problems are being addressed
● Solution: Continuous Integration for Database Projects
● Q&A
Challenges with Database Deployments
Database Lifecycle Management is Hard
Too Many Details
● Need to preserve data puts focus on ALTER scripts
● Dependencies make even simple tasks complex
● Promoting databases across environments
Lack of Error Prevention
● Errors detected too late
● Drift has to be accommodated
Keeping in Sync
● Versioning your database as your application evolves
● Developing for different target platforms
● Migrating databases to the cloud
● Creating one package for multiple deployments
Possible Solutions
Project-based Development will solve
- Keeping DB Schema under version control
- Identifying errors early
Automated Change Script Generation
- Dependencies
- Environment specific publish profiles
• Protect existing org database assets using Source Control integrated with
TFS and Application lifecycle management process
• Developer Self-Service build and deploy of physical DB schemas to the
Dev environment
• Transition DB “change script” generation from Developer to Deployment
Engineer / Release Manager
• Enable developers with a DB schema comparison tool
• Enable automated build validation test for database changes
• Enable developer to get early notification e.g. Dependency
• Get ready to support continuous integration for database change
deployment
Demo Objectives
● Adoption of Visual Studio Sql Server Database Projects may require a mental shift
for some developers or at least a change in process or workflows.
● Developers who have developed database applications where the production
database represents the current version of the database will need to adopt a source
code based approach where source code becomes the vehicle to which change is
made to databases
● In Visual Studio SQL Server Database Projects, the project and the source code is
the "One Version of the Truth" for the database schema and is managed using SCM
workflows likely already being used by the developer or organization for other
portions of their application stack. For the data, the production database remains its
"One Version of the Truth" as it should be.  
Adoption of Sql Server Database Projects
SQL Server Data Tools
6/14/2011
Database is a project that builds into
DACPAC
Code can be tested locally (F5)
Syntax and semantic
validation
during compilation
LocalDB
T-SQL DOM
T-SQL Compiler
Connectivity
DAC FXVisual Studio
Connected Development
SSOX
● SQL Server Object Explorer (SSOX)
● Modeled after SSMS object explorer
Modern Experience
● Modern T-SQL Coding Experience
● Buffered Declarative Object Editing
● Model based with error detection
● Imperative Script Execution
● T-SQL Intelligence
Modern Design
● Code-behind Table Designer
● View/Edit/Script Data (incl. copy/paste)
● Execute/Debug T-SQL Procedures, Functions
Buffered
Declarative
Editing
Graphical
Table
Designer
Project-based Development
Visual Studio IDE
● Database definition managed in VS project
● Database artifacts using same/similar gestures as application code.
● Multi-target to SQL Server {2005-2014} or SQL Azure
Advancements
● Language Services for T-SQL
● Go To Definition/Find All References/Refactoring
● F5 debugging with LocalDB
Tightly Integrated
● Visualize schema differences and migrate changes
● Publish direct to database or via SQL script or DACPAC
● Point-in-time Snapshot
● Drag & Drop import from SQL Server Object Explorer
Application Lifecycle & Tools
Text/Icon/P
ic
MSBuild Tasks
● Build
● Publish
● T-SQL Static Code Analysis
● Database Unit Tests
MSBuild Utilities
● Redist SSDTBuildUtiities.msi
● DB projects in build server
○ environment
● No need to install full copy of VS
Standard Integration
● SSDT integrates with all standard VS SCCS providers
● DACFX v3
● Schema compare
● Publish
Target Version Aware
● SQL Server 2005
● SQL Server 2008
● SQL Server 2008 R2
● SQL Server 2012
● SQL Server 2014
● SQL Server 2106
● SQL Server Azure
Publish
● Direct
● via SQL script
● DACPAC snapshots
Publishing your Database Changes
Schema Deployment
DACFx
SQL Server
Management
Studio
SQLSQL Server Data
Tools
Azure
Management
Portals
Windows Azure
SQL Database
SQL Server
2005, 2008/R2, 2012
Deploy/Upgrade
Script/Report
Reverse Engineer
Demo
Connected or Online Development
Project Based Development
Comparison & Publishing
Continues Integration of SQL
Deployment
Schema Compare
Import Existing DB Schema
Tightly Integrated into VS IDE
SQL Database project type
Create New or Import Existing Schema from:
- .dacpac
- Existing database
- .sql script
Import Existing DB Schema
Working with Database Projects
Managing Schema Objects
SQL Static Analysis
Refactoring
SSDT Home Page http://msdn.microsoft.com/data/tools
Downloads
SSDT for VS2010/VS2012 -
http://msdn.microsoft.com/en-us/data/hh297027
DACFx Redist -
http://www.microsoft.com/en-us/download/details
.aspx?id=34964
Docs, Forums, and Blog
http://msdn.microsoft.com/en-us/library/hh272686.aspx
http://social.msdn.microsoft.com/Forums/en-US/ssdt
http://blogs.msdn.com/b/ssdt
Resources
Q&A

More Related Content

What's hot

Successfully migrating existing databases to Azure
Successfully migrating existing databases to AzureSuccessfully migrating existing databases to Azure
Successfully migrating existing databases to AzureRed Gate Software
 
Using Redgate, AKS and Azure to bring DevOps to your Database
Using Redgate, AKS and Azure to bring DevOps to your DatabaseUsing Redgate, AKS and Azure to bring DevOps to your Database
Using Redgate, AKS and Azure to bring DevOps to your DatabaseRed Gate Software
 
Jason Abbatiello - Software Engineer
Jason Abbatiello - Software EngineerJason Abbatiello - Software Engineer
Jason Abbatiello - Software EngineerJason Abbatiello
 
CA Harvest "Private Solutions - State of New Hampshire
CA Harvest "Private Solutions - State of New HampshireCA Harvest "Private Solutions - State of New Hampshire
CA Harvest "Private Solutions - State of New HampshireBill Mannion (LION)
 
Streams in Parallel Development by Sven Erik Knop
Streams in Parallel Development by Sven Erik KnopStreams in Parallel Development by Sven Erik Knop
Streams in Parallel Development by Sven Erik KnopPerforce
 
Aftab Jahangeer_Dot Net
Aftab Jahangeer_Dot NetAftab Jahangeer_Dot Net
Aftab Jahangeer_Dot NetAftab Jahangir
 
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - TrivadisTechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - TrivadisTrivadis
 
SQL server 2016 New Features
SQL server 2016 New FeaturesSQL server 2016 New Features
SQL server 2016 New Featuresaminmesbahi
 
Sql developer resume
Sql developer resumeSql developer resume
Sql developer resumeguest9db49b8
 
Coursera's Adoption of Cassandra
Coursera's Adoption of CassandraCoursera's Adoption of Cassandra
Coursera's Adoption of CassandraDataStax Academy
 
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...Paulo Condeça 🌐
 
Integrated Requirements Management with Serena Dimensions RM 02-2016
Integrated Requirements Management with Serena Dimensions RM 02-2016Integrated Requirements Management with Serena Dimensions RM 02-2016
Integrated Requirements Management with Serena Dimensions RM 02-2016Serena Software
 
Instaclustr: When and how to migrate from a relational database to Cassandra
Instaclustr: When and how to migrate from a relational database to CassandraInstaclustr: When and how to migrate from a relational database to Cassandra
Instaclustr: When and how to migrate from a relational database to CassandraDataStax Academy
 
Introduction to Asp.net 3.5 using VS 2008
Introduction to Asp.net 3.5 using VS 2008Introduction to Asp.net 3.5 using VS 2008
Introduction to Asp.net 3.5 using VS 2008maddinapudi
 
Perforce Streams
Perforce StreamsPerforce Streams
Perforce StreamsPerforce
 
KnowItPresentation
KnowItPresentationKnowItPresentation
KnowItPresentationChuan Su
 

What's hot (20)

Successfully migrating existing databases to Azure
Successfully migrating existing databases to AzureSuccessfully migrating existing databases to Azure
Successfully migrating existing databases to Azure
 
My SQL Portfolio
My SQL PortfolioMy SQL Portfolio
My SQL Portfolio
 
Using Redgate, AKS and Azure to bring DevOps to your Database
Using Redgate, AKS and Azure to bring DevOps to your DatabaseUsing Redgate, AKS and Azure to bring DevOps to your Database
Using Redgate, AKS and Azure to bring DevOps to your Database
 
Jason Abbatiello - Software Engineer
Jason Abbatiello - Software EngineerJason Abbatiello - Software Engineer
Jason Abbatiello - Software Engineer
 
CA Harvest "Private Solutions - State of New Hampshire
CA Harvest "Private Solutions - State of New HampshireCA Harvest "Private Solutions - State of New Hampshire
CA Harvest "Private Solutions - State of New Hampshire
 
Streams in Parallel Development by Sven Erik Knop
Streams in Parallel Development by Sven Erik KnopStreams in Parallel Development by Sven Erik Knop
Streams in Parallel Development by Sven Erik Knop
 
Aftab Jahangeer_Dot Net
Aftab Jahangeer_Dot NetAftab Jahangeer_Dot Net
Aftab Jahangeer_Dot Net
 
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - TrivadisTechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
TechEvent 2019: Whats new in biGENiUS; Robert Kranabether - Trivadis
 
Sql Portfolio
Sql PortfolioSql Portfolio
Sql Portfolio
 
SQL server 2016 New Features
SQL server 2016 New FeaturesSQL server 2016 New Features
SQL server 2016 New Features
 
Sql developer resume
Sql developer resumeSql developer resume
Sql developer resume
 
Coursera's Adoption of Cassandra
Coursera's Adoption of CassandraCoursera's Adoption of Cassandra
Coursera's Adoption of Cassandra
 
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
Building elastic and fault tolerant Data Platform solutions with Azure, SQL S...
 
Integrated Requirements Management with Serena Dimensions RM 02-2016
Integrated Requirements Management with Serena Dimensions RM 02-2016Integrated Requirements Management with Serena Dimensions RM 02-2016
Integrated Requirements Management with Serena Dimensions RM 02-2016
 
Instaclustr: When and how to migrate from a relational database to Cassandra
Instaclustr: When and how to migrate from a relational database to CassandraInstaclustr: When and how to migrate from a relational database to Cassandra
Instaclustr: When and how to migrate from a relational database to Cassandra
 
Introduction to Asp.net 3.5 using VS 2008
Introduction to Asp.net 3.5 using VS 2008Introduction to Asp.net 3.5 using VS 2008
Introduction to Asp.net 3.5 using VS 2008
 
Weblogic domain
Weblogic domainWeblogic domain
Weblogic domain
 
Perforce Streams
Perforce StreamsPerforce Streams
Perforce Streams
 
KnowItPresentation
KnowItPresentationKnowItPresentation
KnowItPresentation
 
Wakanda db parisjs-2011-12
Wakanda db parisjs-2011-12Wakanda db parisjs-2011-12
Wakanda db parisjs-2011-12
 

Similar to Database CI Demo Using Sql Server

DWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
DWX 2023 - Datenbank-Schema Deployment im Kubernetes ReleaseDWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
DWX 2023 - Datenbank-Schema Deployment im Kubernetes ReleaseMarc Müller
 
Apoyo en la administración de bases de datos mediante microsoft data tools
Apoyo en la administración de bases de datos mediante microsoft data toolsApoyo en la administración de bases de datos mediante microsoft data tools
Apoyo en la administración de bases de datos mediante microsoft data toolsSpanishPASSVC
 
Microsoft SQL Server Continuous Integration
Microsoft SQL Server Continuous IntegrationMicrosoft SQL Server Continuous Integration
Microsoft SQL Server Continuous IntegrationMark Ginnebaugh
 
Database Build and Release - SQL In The City - Ernest Hwang
Database Build and Release - SQL In The City - Ernest HwangDatabase Build and Release - SQL In The City - Ernest Hwang
Database Build and Release - SQL In The City - Ernest HwangRed Gate Software
 
Database Change Management
Database Change Management Database Change Management
Database Change Management headspringlabs
 
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaContinuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaDr. John Tunnicliffe
 
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaContinuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaDr. John Tunnicliffe
 
Olaf_Senz_Resume
Olaf_Senz_ResumeOlaf_Senz_Resume
Olaf_Senz_ResumeOlaf Senz
 
Brk2045 upgrade sql server 2017 (on prem, iaa-s and paas)
Brk2045 upgrade sql server 2017 (on prem, iaa-s and paas)Brk2045 upgrade sql server 2017 (on prem, iaa-s and paas)
Brk2045 upgrade sql server 2017 (on prem, iaa-s and paas)Bob Ward
 
Meetup developing building and_deploying databases with SSDT
Meetup developing building and_deploying databases with SSDTMeetup developing building and_deploying databases with SSDT
Meetup developing building and_deploying databases with SSDTSolidify
 
Bringing DevOps to the Database
Bringing DevOps to the DatabaseBringing DevOps to the Database
Bringing DevOps to the DatabaseMichaela Murray
 
Nwdi Overview And Features
Nwdi Overview And FeaturesNwdi Overview And Features
Nwdi Overview And Featuresakrishnanr
 
SQL Server 2019 hotlap - WARDY IT Solutions
SQL Server 2019 hotlap - WARDY IT SolutionsSQL Server 2019 hotlap - WARDY IT Solutions
SQL Server 2019 hotlap - WARDY IT SolutionsMichaela Murray
 
OUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th JanuaryOUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th JanuaryBrendan Tierney
 
Database Migrations with Gradle and Liquibase
Database Migrations with Gradle and LiquibaseDatabase Migrations with Gradle and Liquibase
Database Migrations with Gradle and LiquibaseDan Stine
 
Informatica,Teradata,Oracle,SQL
Informatica,Teradata,Oracle,SQLInformatica,Teradata,Oracle,SQL
Informatica,Teradata,Oracle,SQLsivakumar s
 
Should I move my database to the cloud?
Should I move my database to the cloud?Should I move my database to the cloud?
Should I move my database to the cloud?James Serra
 

Similar to Database CI Demo Using Sql Server (20)

DWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
DWX 2023 - Datenbank-Schema Deployment im Kubernetes ReleaseDWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
DWX 2023 - Datenbank-Schema Deployment im Kubernetes Release
 
Database Schema Management & Deployment using SQL Server Data Tools (SSDT)
Database Schema Management & Deployment using SQL Server Data Tools (SSDT)Database Schema Management & Deployment using SQL Server Data Tools (SSDT)
Database Schema Management & Deployment using SQL Server Data Tools (SSDT)
 
Apoyo en la administración de bases de datos mediante microsoft data tools
Apoyo en la administración de bases de datos mediante microsoft data toolsApoyo en la administración de bases de datos mediante microsoft data tools
Apoyo en la administración de bases de datos mediante microsoft data tools
 
Database CI/CD Pipeline
Database CI/CD PipelineDatabase CI/CD Pipeline
Database CI/CD Pipeline
 
Microsoft SQL Server Continuous Integration
Microsoft SQL Server Continuous IntegrationMicrosoft SQL Server Continuous Integration
Microsoft SQL Server Continuous Integration
 
Database Build and Release - SQL In The City - Ernest Hwang
Database Build and Release - SQL In The City - Ernest HwangDatabase Build and Release - SQL In The City - Ernest Hwang
Database Build and Release - SQL In The City - Ernest Hwang
 
Database Change Management
Database Change Management Database Change Management
Database Change Management
 
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaContinuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
 
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday SloveniaContinuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
Continuous Integration and the Data Warehouse - PASS SQL Saturday Slovenia
 
Olaf_Senz_Resume
Olaf_Senz_ResumeOlaf_Senz_Resume
Olaf_Senz_Resume
 
Brk2045 upgrade sql server 2017 (on prem, iaa-s and paas)
Brk2045 upgrade sql server 2017 (on prem, iaa-s and paas)Brk2045 upgrade sql server 2017 (on prem, iaa-s and paas)
Brk2045 upgrade sql server 2017 (on prem, iaa-s and paas)
 
Meetup developing building and_deploying databases with SSDT
Meetup developing building and_deploying databases with SSDTMeetup developing building and_deploying databases with SSDT
Meetup developing building and_deploying databases with SSDT
 
Bringing DevOps to the Database
Bringing DevOps to the DatabaseBringing DevOps to the Database
Bringing DevOps to the Database
 
Nwdi Overview And Features
Nwdi Overview And FeaturesNwdi Overview And Features
Nwdi Overview And Features
 
SQL Server 2019 hotlap - WARDY IT Solutions
SQL Server 2019 hotlap - WARDY IT SolutionsSQL Server 2019 hotlap - WARDY IT Solutions
SQL Server 2019 hotlap - WARDY IT Solutions
 
OUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th JanuaryOUG Ireland Meet-up 12th January
OUG Ireland Meet-up 12th January
 
Database Migrations with Gradle and Liquibase
Database Migrations with Gradle and LiquibaseDatabase Migrations with Gradle and Liquibase
Database Migrations with Gradle and Liquibase
 
Informatica,Teradata,Oracle,SQL
Informatica,Teradata,Oracle,SQLInformatica,Teradata,Oracle,SQL
Informatica,Teradata,Oracle,SQL
 
SivakumarS
SivakumarSSivakumarS
SivakumarS
 
Should I move my database to the cloud?
Should I move my database to the cloud?Should I move my database to the cloud?
Should I move my database to the cloud?
 

Recently uploaded

Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...OnePlan Solutions
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfMarharyta Nedzelska
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...OnePlan Solutions
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....kzayra69
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio, Inc.
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesŁukasz Chruściel
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfIdiosysTechnologies1
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 

Recently uploaded (20)

Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
Tech Tuesday - Mastering Time Management Unlock the Power of OnePlan's Timesh...
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
A healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdfA healthy diet for your Java application Devoxx France.pdf
A healthy diet for your Java application Devoxx France.pdf
 
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
Maximizing Efficiency and Profitability with OnePlan’s Professional Service A...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....What are the key points to focus on before starting to learn ETL Development....
What are the key points to focus on before starting to learn ETL Development....
 
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed DataAlluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
Alluxio Monthly Webinar | Cloud-Native Model Training on Distributed Data
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Unveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New FeaturesUnveiling the Future: Sylius 2.0 New Features
Unveiling the Future: Sylius 2.0 New Features
 
Best Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdfBest Web Development Agency- Idiosys USA.pdf
Best Web Development Agency- Idiosys USA.pdf
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 

Database CI Demo Using Sql Server

  • 2. Agenda ● Challenges with Database Deployment ● How are these problems are being addressed ● Solution: Continuous Integration for Database Projects ● Q&A
  • 3. Challenges with Database Deployments Database Lifecycle Management is Hard Too Many Details ● Need to preserve data puts focus on ALTER scripts ● Dependencies make even simple tasks complex ● Promoting databases across environments Lack of Error Prevention ● Errors detected too late ● Drift has to be accommodated Keeping in Sync ● Versioning your database as your application evolves ● Developing for different target platforms ● Migrating databases to the cloud ● Creating one package for multiple deployments
  • 4. Possible Solutions Project-based Development will solve - Keeping DB Schema under version control - Identifying errors early Automated Change Script Generation - Dependencies - Environment specific publish profiles
  • 5. • Protect existing org database assets using Source Control integrated with TFS and Application lifecycle management process • Developer Self-Service build and deploy of physical DB schemas to the Dev environment • Transition DB “change script” generation from Developer to Deployment Engineer / Release Manager • Enable developers with a DB schema comparison tool • Enable automated build validation test for database changes • Enable developer to get early notification e.g. Dependency • Get ready to support continuous integration for database change deployment Demo Objectives
  • 6. ● Adoption of Visual Studio Sql Server Database Projects may require a mental shift for some developers or at least a change in process or workflows. ● Developers who have developed database applications where the production database represents the current version of the database will need to adopt a source code based approach where source code becomes the vehicle to which change is made to databases ● In Visual Studio SQL Server Database Projects, the project and the source code is the "One Version of the Truth" for the database schema and is managed using SCM workflows likely already being used by the developer or organization for other portions of their application stack. For the data, the production database remains its "One Version of the Truth" as it should be.   Adoption of Sql Server Database Projects
  • 7. SQL Server Data Tools 6/14/2011 Database is a project that builds into DACPAC Code can be tested locally (F5) Syntax and semantic validation during compilation LocalDB T-SQL DOM T-SQL Compiler Connectivity DAC FXVisual Studio
  • 8. Connected Development SSOX ● SQL Server Object Explorer (SSOX) ● Modeled after SSMS object explorer Modern Experience ● Modern T-SQL Coding Experience ● Buffered Declarative Object Editing ● Model based with error detection ● Imperative Script Execution ● T-SQL Intelligence Modern Design ● Code-behind Table Designer ● View/Edit/Script Data (incl. copy/paste) ● Execute/Debug T-SQL Procedures, Functions Buffered Declarative Editing Graphical Table Designer
  • 9. Project-based Development Visual Studio IDE ● Database definition managed in VS project ● Database artifacts using same/similar gestures as application code. ● Multi-target to SQL Server {2005-2014} or SQL Azure Advancements ● Language Services for T-SQL ● Go To Definition/Find All References/Refactoring ● F5 debugging with LocalDB Tightly Integrated ● Visualize schema differences and migrate changes ● Publish direct to database or via SQL script or DACPAC ● Point-in-time Snapshot ● Drag & Drop import from SQL Server Object Explorer
  • 10. Application Lifecycle & Tools Text/Icon/P ic MSBuild Tasks ● Build ● Publish ● T-SQL Static Code Analysis ● Database Unit Tests MSBuild Utilities ● Redist SSDTBuildUtiities.msi ● DB projects in build server ○ environment ● No need to install full copy of VS Standard Integration ● SSDT integrates with all standard VS SCCS providers ● DACFX v3 ● Schema compare ● Publish
  • 11. Target Version Aware ● SQL Server 2005 ● SQL Server 2008 ● SQL Server 2008 R2 ● SQL Server 2012 ● SQL Server 2014 ● SQL Server 2106 ● SQL Server Azure Publish ● Direct ● via SQL script ● DACPAC snapshots Publishing your Database Changes
  • 12. Schema Deployment DACFx SQL Server Management Studio SQLSQL Server Data Tools Azure Management Portals Windows Azure SQL Database SQL Server 2005, 2008/R2, 2012 Deploy/Upgrade Script/Report Reverse Engineer
  • 13. Demo Connected or Online Development Project Based Development Comparison & Publishing Continues Integration of SQL Deployment
  • 15. Import Existing DB Schema Tightly Integrated into VS IDE SQL Database project type Create New or Import Existing Schema from: - .dacpac - Existing database - .sql script
  • 21. SSDT Home Page http://msdn.microsoft.com/data/tools Downloads SSDT for VS2010/VS2012 - http://msdn.microsoft.com/en-us/data/hh297027 DACFx Redist - http://www.microsoft.com/en-us/download/details .aspx?id=34964 Docs, Forums, and Blog http://msdn.microsoft.com/en-us/library/hh272686.aspx http://social.msdn.microsoft.com/Forums/en-US/ssdt http://blogs.msdn.com/b/ssdt Resources
  • 22. Q&A