Light-weight tool for keeping track of your SQL database schema version
This is a database upgrade tool that works with .NET and SQL Server specifically. It is extremely light-weight: consists of only 4 classes (including Program.cs).
The best practices behind this tool are described in my Pluralsight course.
To start applying the migration-based approach to database delivery, you need to create a baseline script (the script containing all the objects your database has so far) and place it to Migrations as "01_Base.sql".
After that, you need to adjust the connection string and you are good to go.
The best way to use the tool is to copy it to your solution as a separate project:
After that, you can add new migrations to the Scripts folder and execute them just by hitting F5:
Warning! Don't forget to mark the files in the Scripts folder as Content, Copy Always:
The tool executes the scripts in a transactional manner. If for example migration #4 contains an error which results in an exception, the tool will execute migrations 1, 2, and 3; migration 4 will be rollbacked entirely. The database would be marked as of version 3.