Change Management \ Version Control Plug-In for SQL Server?

  • Hello @ all,

    we want to introduce a Change Management \ Version Control Tool for our sql server development to see WHO has changed WHAT and WHEN including VERSIONING of Views and Stored Procedures.

    In SQL Server under Tools\Options\Source Control there can be select a source control Plug-In.

    But i haven't seen any software yet, does anyone know some integrateable versioning tool?

    Thanks a lot!

  • Team Foundation Services or (shudder) Visual SourceSafe will both work. Understand, you'll be versioning the scripts that define the objects in the database, not the objects in the database themselves. You might want to consider working with a third party tool. We use Visual Studio Team System Database Edition to help us manage the scripts, versions and deployments. You could also look into using Red Gate's SQL Compare. It works very well with source control systems, allowing you to compare between the scripts and a live database to generate the appropriate TSQL for creation & edit of structures.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Can I work with these tools directly in SQL Server Management Studio(SSMS)?

    If not than we would have to script everything out into the file system, thats double work.

    Also if there is no integration in SSMS developers could make changes directly in SSMS without making an entry in the source control software.

    We want to version primarily views and stored procedurs because these are the objects we are developping.

    Thanks for your answers.

  • Yes & no. You can work directly with the files in source control through SSMS, but you can't work directly with database objects IN source control, no such thing. Source control holds a script, the database holds the application of the script. Never the twain shall meet, sort of.

    In order to implement version control of procedures & views, you have to have a disciplined and defined deployment process that ensures only deployments from source control are valid. Otherwise, as you say, anyone with access to the database can manipulate objects.

    But once you define that up front, especially once you point out to the development team that it's exactly the same way they work, they'll get on board & work with you (well, they should).

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • As far as i have seen TFS runs only on 32-Bit Servers, we only have 64-Bit Servers πŸ™

    "Team Foundation Server requires that the application tier run in a native 32-bit environment"

    http://msdn.microsoft.com/en-us/library/ms253078.aspx

  • But you're not going with VSS are you? 3rd party perhaps?

    I'd think that MS must surely get TFS on to 64bit most riki tik.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • David.Maron (8/6/2009)


    Can I work with these tools directly in SQL Server Management Studio(SSMS)?

    If not than we would have to script everything out into the file system, thats double work.

    Also if there is no integration in SSMS developers could make changes directly in SSMS without making an entry in the source control software.

    We want to version primarily views and stored procedurs because these are the objects we are developping.

    Thanks for your answers.

    Hi David,

    I'm the product manager for Red Gate's SQL developer tools. You're right, at the moment with SQL Compare and SQL Data Compare you have to first make changes to the development copy of your database and once you're happy with the changes, you have to synchronize these with your source control version, which does involve loading the tool as a separate step. This works effectively but there are still improvements that could be made to integrate better with the development environment.

    We are therefore currently building upon SQL Compare's scripts folder model and will be integrating source control directly into SSMS. In other words, we will let you make schema changes to a development database in SSMS and commit the changes without having to interact with a separate tool. Likewise you'll be able to retrieve changes from source control from SSMS. We even plan to let you commit and retrieve static data from source control (SQL Data Compare 8 now supports deploying and scripting out static data as DML scripts files for the purposes of source control). If you're interested in hearing more about this new source control tool, please email me at David.Atkinson at red-gate.com and I'll put you on our beta testers list. We'll send you news on the current developments, inform you when early releases are available to try and of course give you the opportunity to influence the direction on the tool.

    Kind regards,

    David Atkinson

    Product Manager

    Red Gate Software

  • Hi

    I use VSS integrated into SSMS. It is cumbersome to use but it does the job. It make sure there are no concurrent changes to the same script and give control WHO does WHAT, but to look at that i have to go to VSS.

    Versioning and deploying to production is not easy either, but it still provides a level of security and organization.

    "Keep Trying"

  • Thanks for your replies! I will think about the possibilities.

    Where can i get Visual Source Safe from, i have found no downloads from Microsoft site?

    Thanks,

    David

  • David.Maron (8/10/2009)


    Thanks for your replies! I will think about the possibilities.

    Where can i get Visual Source Safe from, i have found no downloads from Microsoft site?

    Thanks,

    David

    Hi David,

    It’s in the MS store ($500/user) http://store.microsoft.com/search.aspx?q=visual+sourcesafe

    VSS 2005 and 6.0d are both available for download in MSDN for subscribers. Bear in mind that Microsoft now favours Team Foundation Server over VSS and updates for the former will be reduced to the level of security hotfixes in 2011.

    Source control support in SSMS isn't specific to VSS. If you already have a source control system the chances are that it will integrate. However, remember that you can only source control files. There will be no mapping between a database object and an object in source control and source controlling an object will require you to first script it out to a file.

    David

  • Hi David

    just to add something to what grant has said so far.

    You can also have a look at third party management tools which provide you with inbuilt version control system using visual sourcesafe.

    Vivek

    Vivek Shukla - MCTS SQL Server 2008

  • Theres a Third party tool for SQL Version Control, that can do exactly want you need - Randolph, by Nob Hill software

    ...It shifts the responsibility for versioning from the users to the software. Its light-weight, easy to use tool that runs in the background and keeps track of all your databases schema and data changes over time, and enables full review of databases' history, and full rollback to any point in time, as well as optionally push changes into existing systems (Subversion, SourceSafe or Team Foundation Server)

    --------

    SQL Data compare , Synchronize data from diffrent surces, and many other SQL tools[/url].

  • itamar (9/3/2009)


    Theres a Third party tool for SQL Version Control, that can do exactly want you need - Randolph, by Nob Hill software

    ...It shifts the responsibility for versioning from the users to the software. Its light-weight, easy to use tool that runs in the background and keeps track of all your databases schema and data changes over time, and enables full review of databases' history, and full rollback to any point in time, as well as optionally push changes into existing systems (Subversion, SourceSafe or Team Foundation Server)

    It doesn't get versioned until it has already changed in the database no less. I don't think I like that. Non table objects don't bother me as much but tables.. I don't know about that. Also I might compile a sproc 30 times as I'm building and testing it, those are all different versions?

    I see this as more of an audit tool than version control, at least at first glance.. I will however give it a further glance.

    CEWII

  • And what about if you have different servers: Test,Quality and Production. How do you know which version is on which server??

  • David.Maron (9/22/2009)


    And what about if you have different servers: Test,Quality and Production. How do you know which version is on which server??

    That is a good question, we had typcially handled that on paper. We have the source controlled version which is a version equal to or greater than the current QC AND PROD version. We move that version from DEV to QC using an issuance document, and that same document forms the basis of the move to PROD. We also do periodic audits of structure to make sure that the structure is in compliance with the expected norm.

    CEWII

Viewing 15 posts - 1 through 15 (of 24 total)

You must be logged in to reply to this topic. Login to reply