A few Provokers and myself went along a while ago to a presentation on Visual Studio 2005 Team Edition for Database Professionals, given by Clive Trott to the Wellington SQL Server User Group.
Part of Microsoft’s latest offerings of Visual Studio 2005, Visual Studio 2005 Team Edition (VSTE) comes in different flavours –Architect, Software Developer, Tester and Database Professional.
If you want to know about VSTE: DB Pro and what it does etc, have a look at Trott’s presentation (see above) or the Microsoft product page here.
In a nutshell, VSTE: DB Pro will supposedly take us away from using SQL Server Management Studio for the standard development chores, letting us do all of our work in Visual Studio.
True, I loved the ‘proper’ version control finally available to a databases and the ‘Schema’ view you could use to view objects (as opposed to only the script view given in the Database Project available in VS2005).
However, I came away with two key disappointments about the product which means that my conversion from good ol’ SQL Server Management Studio to VSTE: DB Pro is rather unlikely.
The first was a lack of GUI interface for Schema objects.
In Management Studio you have the age old ability to view a GUI version of the table, its columns, the tick box if it’s null etc., right out of working with Microsoft Access. It was an easy way to add columns, set identities etc using an interface instead of remembering the SQL syntax.
Unfortunately, VSTE:DB Pro lets you view Schema objects alright – but only in it’s SQL format, so to edit a table you are back to editing a CREATE TABLE statement.
Now some might argue that editing and changing tables using scripts is the ‘true’ way of SQL development. But regardless of your opinions on that matter, it is inarguably less user-friendly. And I can’t help but feel that it’s just going to be a right pain to use in every day development.
The second, and more significant, is licensing.
As Trott mentioned in his presentation, in small-medium sized software development companies, there isn’t a distinct segregation of database development vs. software development. As a developer, we all do a bit of coding and a bit of SQL. There is no DBA, we all act as hybrids.
However, VSTE: Software Developer (my obvious requirement for those C# programming requirements) and VSTE: DB Pro (my other requirement for that SQL development under Source Control) are separate products, separate prices and sold separately. They’re about as separate as you can get.
So as a ‘hybrid’ developer, I would require license for both programs, or otherwise one person is put in charge of all the database development for a project in order to use one of a few VSTE: DB Pro licenses available.
Somehow I don’t think the former is financially realistic and the latter seems equally improbable in a smaller software house when you have fewer personnel.
The alternative is a wacky combination of developers using Management Studio for development and storing changes in VSTE: DB Pro when done for checking in. Which needless to say is just asking for trouble.
For the meantime, most of us developers will probably continue to use Management Studio, and still be without one of the key advantages that VSTE: DB Pro offers – decent source control.