• We had a similar solution to the problem of developers changing stored procedures without any version control. The only version control we had was limited to the previous backup.

    The solution: I built a .net console app, used SMO to script each object to a text file, then checked in each file into visual source safe. The app runs every night, does a check-in for multiple servers/databases. We setup a source safe project for every database. When we do a release, we apply a label on the whole project/database.

    Now when a developer makes a change to a stored procedure, that change is checked into source safe that night. Using source safe we can track the change history on each procedure, table, trigger, etc.