Open Source and SQL Server 2005 Express edition

Posted: August 20, 2008 in Computer and Internet

Alright it is time to be a bit more provoking (maybe I get a comment =) so I am going to advocate a few MS tools (again), this time Visual Studio and its ecosystem. I can’t say for sure why I favor this suite so much, but once again I hope it is because I have found it to be the most efficient tool for what I am doing. The only downside is that they are not Open Source, but then again Eclipse is and I never have time to alter things anyway, Adobe isn’t and it doesn’t bother me (even though Flash CS3 really needs some love…). Sure it is nice to be able to see the code but it isn’t really a production/efficiency factor for me (and I really doubt it is for many people, they need to invest their time in their core domain not improving tools). Beside Visual Studio is based on the Visual Studio Shell (a free tool you can use to make your own IDE for your own language) so it is really very plugable and extendable without having the complete code.

In general I have not really understood the necessity of everything needing to be Open Source, it is surely nice, it surely benefits society as it is an endless source for education for developers, it allows me to tinker with things if I want (however very very few people have the ability to, even fewer people actually have time to actually do just that). I find it much more important that I the tool is working, is being actively developed and improved and not forked every fortnight.. Perhaps I am close minded..

So I have been playing around with the gold mine of free features in the express editions (http://www.microsoft.com/express/download/) (I am a long time use of the professional editions, all the way back when Turbo C and Delphi were the competition). It is really nice to see that effort is put into competing with eclipse and other free (as in no charge) tools out there. It would be a shame to lose a whole generation of potential developers just because they couldn’t get there hands on the tools. Visual Studio is one of the best IDEs I have ever used, and I have used and use many daily (among them eclipse). Teh debugger is probably the feature that stands out the most and also the fact that many features are already installed by default compared to eclipse where you have to go plugin hunting, which is a never ending story. Not to say that there aren’t plugins for VS that are really useful, such as FXCop, DevExpress or ReSharper, Workspace Wizard to name a few. One usage annoying downside to the Express versions though is that plugins are not allowed…

The Visual Studio tools are starting to blend together better and better and I wish they would release the Expression Blend in a express edition as well so some competition could happen on the Adobe Flash because that is really one of the most horrible IDEs I have to stand daily especially the utterly useless debugger (and the propriety binary only mergeable FLAs..).

In this suite of tools (that has been available for paying developers for a long time) you can find a fully fledged, fully functional SQL Server. Easy to configure, rock solid stability and best class performance. The ease of setting it up makes MySql or your choice of FOSS servers seem almost prehistoric (in my opinion). I have a hard time seeing why one would choose SQLite or MySql when the express editions of SQL Server are free (as in no charge) unless of course you believe you are a database developer and can really contribute to the server and needs the sources to do it, frankly I believe that will only slow you down, leave it to the database wizards instead. Or of course if your preferred development machine and deployment environment is unix based, then you are out of luck =) And of course we all have different preferences. Perhaps I have a different mindset because I could never get my head around MySql it still feels like I am always fighting it to get things done or perhaps I am indoctrinated due to using MS tools for too long so I can’t see the path of the righteous any longer..

Either way one problem you might stumble upon is that by default the only local connections are allowed (quite reasonable as it is mainly meant for development, use SQL Embedded for deployment for your small applications). However this can easily be changed to allow remote connections and also over TCP/IP. Check the Surface Area Configuration tool that install along the SQL Server. Next problem might be that the SQL login is not enabled by default, only Windows authentication is (might cause you troubles if you have process in unix wanting to join the fuzzy SQL world). This can also easily be changed through the free "SQL Server Management Studio Express (http://www.microsoft.com/downloads/details.aspx?FamilyId=C243A5AE-4BD1-4E3D-94B8-5A0F62BF7796&displaylang=en)". This tool is a basic version of the Query Analyzer and SQL Enterprise Manager in one. Simply right click the SQL Server and choose properties, then select Security, change to mixed mode and restart the SQL Server.

If you want to use the "sa" login you will need to enable it as well, also done through the Management Studio, connect, open the Security tree node, open Logins, right click "sa" and chose properties. Open Status and check enable.

Before the 2005, the express editions were missing useful management tools and you were forced to use the command version (sqlcmd, osql etc) which is fine for installation scripts, but not really when you want to develop and change a lot of a stuff often, a GUI really is the way to go (unless you love wading through manual pages to figure out the commands).

Give it a try, the tool works with SQL 2008 so it can be useful for you if your production test database is something you like to fiddle with without buy another license (not sure you are allowed to connect to a production system). The Express edition of 2008 (updated tools coming soon) is out and comes with plenty of new and very cool features such us Power Shell integration (http://technet.microsoft.com/en-us/magazine/cc434690.aspx).

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s