I had a project from about 6 years ago that used this method of DB versioning. The project was quite large and took 4 years to make-- it had a very large database schema and required a lot of default data.
One day recently I pulled that project off the shelf and decided to see if I could get it running for nostalgia's sake:
SGS Server starting...
Expected database version: 57.
Found database version: 0.
Applying DB change script: 1...success.
Applying DB change script: 2...success.
(...)
Database updated.
SGS Server running.
After seeing my old project set itself up automatically with no grief, I felt an enormous amount of pride. I only wish my day job would implement a similar system.
One day recently I pulled that project off the shelf and decided to see if I could get it running for nostalgia's sake:
SGS Server starting...
Expected database version: 57.
Found database version: 0.
Applying DB change script: 1...success.
Applying DB change script: 2...success.
(...)
Database updated.
SGS Server running.
After seeing my old project set itself up automatically with no grief, I felt an enormous amount of pride. I only wish my day job would implement a similar system.