DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Over 2 million developers have joined DZone. Join Today! Thanks for visiting DZone today,
Edit Profile Manage Email Subscriptions Moderation Admin Console How to Post to DZone Article Submission Guidelines
View Profile
Sign Out
Refcards
Trend Reports
Events
View Events Video Library
Zones
Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Integrating PostgreSQL Databases with ANF: Join this workshop to learn how to create a PostgreSQL server using Instaclustr’s managed service

Mobile Database Essentials: Assess data needs, storage requirements, and more when leveraging databases for cloud and edge applications.

Monitoring and Observability for LLMs: Datadog and Google Cloud discuss how to achieve optimal AI model performance.

Automated Testing: The latest on architecture, TDD, and the benefits of AI and low-code tools.

Related

  • 7 Essential Tools for a Competent Data Scientist
  • A Better Web3 Experience: Account Abstraction From Flow (Part 2)
  • Training a Handwritten Digits Classifier in Pytorch With Apache Cassandra Database
  • Automated Testing: The Missing Piece of Your CI/CD Puzzle

Trending

  • Running Unit Tests in GitHub Actions
  • How To Learn Secure Software Development Lifecycle (SDLC)
  • Microservices With Apache Camel and Quarkus
  • TypeScript: Useful Features
  1. DZone
  2. Data Engineering
  3. Databases
  4. The Definitive Guide to Database Version Control — Part 7

The Definitive Guide to Database Version Control — Part 7

This article sums up our series on database version control, briefly explaining the strengths of database enforced change management.

Yaniv Yehuda user avatar by
Yaniv Yehuda
·
Dec. 30, 15 · Tutorial
Like (3)
Save
Tweet
Share
3.75K Views

Join the DZone community and get the full member experience.

Join For Free

this is part seven of a seven part series on database version control. in part one , two , three , four , five , and six we reviewed how the methods for creating software evolved into agile and devops, what separates the database from application code and the challenges that must be addressed when managing database changes.

we then went through the most popular methods being used and the shortfalls of each, and revealed the correct way to practice database version control in order to maximize value and eliminate risk to the organization.

summary

using manual processes for database changes means a substantial risk to the database and the valuable data it holds. two of the most popular methods provide no automation at all and leave the database far behind.

utilizing simple compare and sync to manage database changes also does not answer many of the specific challenges of the database because it does not utilize the version control repository when performing the compare and generating the ddl script. for that reason the version control repository does not act as the single source of truth.

another problem that simple compare and sync runs into is, that because the information is stored in the alm, cms, or version control repository, which is external to the compare & sync tool, it compares the entire database and shows the differences, generating relevant and irrelevant deployment scripts.

most critically, simple compare and sync does not ensure the deployment script handles conflicts and merges them.

database enforced change management , on the other hand, combines enforcement of version control processes on the database objects with generation of the deployment script when required, based on the version control repository and the structure of the environment at that time.

this approach uses “build and deploy on-demand,” meaning the deploy script is built (generated) when needed, not as part of development. this allows for efficient handling of conflicts, merges, and out-of-process changes.

the database component has special requirements, and therefore creates a real challenge for automation processes. in the old days, when there were only a few releases per year, it was common and understandable to invest time manually reviewing and maintaining the database deployment scripts. today, with the growing need to be agile and provide releases faster, the database must be part of the automation process. developing sql scripts, developing xml scripts, or using simple compare & sync are either inefficient and/or risky approaches when it comes to automation. the most effective method is to implement database enforce change management.

comparison table:

to see how database enforced change management can enables agile development, continuous integration and delivery for the database, schedule a free demo now.

Database Version control

Published at DZone with permission of Yaniv Yehuda, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

Related

  • 7 Essential Tools for a Competent Data Scientist
  • A Better Web3 Experience: Account Abstraction From Flow (Part 2)
  • Training a Handwritten Digits Classifier in Pytorch With Apache Cassandra Database
  • Automated Testing: The Missing Piece of Your CI/CD Puzzle

Comments

Partner Resources

X

ABOUT US

  • About DZone
  • Send feedback
  • Careers
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends: