<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>DBMS on Ash Tewari</title><link>https://www.tewari.info/tag/dbms/</link><description>Recent content in DBMS on Ash Tewari</description><generator>Hugo -- gohugo.io</generator><language>en-US</language><lastBuildDate>Tue, 19 Feb 2008 03:05:52 +0000</lastBuildDate><atom:link href="https://www.tewari.info/tag/dbms/feed.xml" rel="self" type="application/rss+xml"/><item><title>Database Schema Version Control Tool</title><link>https://www.tewari.info/2008/02/18/dbupdater-database-schema-version-control/</link><pubDate>Tue, 19 Feb 2008 03:05:52 +0000</pubDate><guid>https://www.tewari.info/2008/02/18/dbupdater-database-schema-version-control/</guid><description>&lt;p&gt;It is essential to treat database schema as source code and apply all the norms and best practices applicable to it. From what I hear and read, database schema version control is non-existent in too many projects.&lt;/p&gt;&#10;&lt;p&gt;Various techniques to accomplish version control of database schemas have been discussed and published. Martin Fowler and Pramod Sadagale has written a comprehensive article on &lt;a class="link" href="http://martinfowler.com/articles/evodb.html" target="_blank" rel="noopener"&#10; &gt;Evolutionary Database Design&lt;/a&gt;. It is a must-read for everyone involved with database development.&lt;/p&gt;&#10;&lt;p&gt;K. Scott Allen writes in detail about an excellent system here - &lt;a class="link" href="http://odetocode.com/Blogs/scott/archive/2008/02/02/11721.aspx" title="Versioning Databases - Change Scripts"&#10; target="_blank" rel="noopener"&#10; &gt;Versioning Databases - Change Scripts&lt;/a&gt;. This approach is sufficiently light-weight (for my taste) and provides complete control over the whole process.&lt;/p&gt;&#10;&lt;p&gt;I am providing a free tool here that you can use to implement this system. It will even create the SchemaVersionsLog table for your database, if it doesn&amp;rsquo;t exist. If you are using this tool with MSSQL Server, you can get started with very little effort. If you are using a different DBMS, you can still use this tool. It uses NHibernate to access the SchemaVersionsLog table. So, any DBMS supported by NHibernate is acceptable, as long as it comes with a command line tool to execute the sql scripts.&lt;/p&gt;&#10;&lt;p&gt;Download &lt;a class="link" href="https://www.tewari.info/dbupdater/" title="DbUpdater : Database Schema Version Control"&#10; &gt;DbUpdater here&lt;/a&gt;.&lt;/p&gt;&#10;</description></item></channel></rss>