SQL Server 2005, which has just been made available in beta form to developers, is the latest incarnation of Microsoft's enterprise database management system (DBMS). We looked at the second beta release.
The package runs on Windows 2000, Windows Server 2003 or Windows XP. Although the "official" minimum hardware requirement for the 32-bit version is a 600MHz processor and 256MB RAM, anyone familiar with heavy-duty database packages will know that the more processing power and RAM you load in there, the better it'll fly. There's also a 64-bit flavour of the package, by the way, which cites a RAM requirement of 1GB, but the same rules apply – the more the better. We ran our installation on a 1GHz PIII with 1GB RAM and Windows 2000 Server SP4.
The installer for SQL2005 is much nicer than that of its predecessor – instead of having to install components individually, everything's in a single installer and you pick the bits you want. We chose to install everything, for which the installer estimated we'd need about 600MB of our 20GB disk.
The first thing you notice with SQL2005 is that key items that were implemented as bolt-ons to SQL2000 are now an integrated part of the system – no surprise, then, that XML-structured data repositories are natively handled alongside traditional relational datasets. The inclusion of XML data structures in a database server is an interesting one, because it deviates somewhat from the de facto "standard" approach of using relational tables with foreign keys linking the elements: XML is, by nature, a hierarchical structure, and so it gives hope to those with hierarchical datasets that are a pain to map onto a traditional relational database.
The T/SQL programming language that's used to write user-defined functions and stored procedures has also grown somewhat. We can no longer curse about its below-average error handling, for instance, and the new version also includes event triggering and handling, the ability to write hierarchical queries (no shock there given what we've said about XML above), improved trigger handling (making functions run when something happens, such as an update or insertion in a table) and a concept called Common Table Expressions (a very handy way of expressing complex queries that refer to the same subquery multiple times).
The main "real" new feature in SQL2005 is its tight integration with the .NET framework. This didn't happen with SQL2000 simply because it pre-dated the .NET regime, but now the two worlds have been united to provide much closer integration between high-level program code and low-level database queries.
From the user's point of view, the various applications you get with SQL Server are slightly different from SQL2000. The first thing you notice is that Enterprise Manager and Query Analyzer are no more, since the functionality of these tools has been combined into the new SQL Server Management Studio. This is a good idea (as anyone who spends their life ALT-TABbing between the two worlds under SQL2000), and the GUI and shortcut keys of the combined version are similar enough to their predecessors for the transition to be painless. Alongside the management studio is a number of other tools, including the Business Intelligence Development Studio (part of the Analysis Services suite), the Database Tuning Advisor (a tool that helps non-experts design an efficient indexing and partitioning scheme) and the Profiler (for tracing the execution of procedures and queries in order to diagnose problems or find out why something's not behaving as it should).
Although not explicitly stated in the current product blurb, SQL2005 is likely to be available in "standard" and "enterprise" versions, just like SQL2000. As with the earlier product there's also a free version; with SQL2000 we had MSDE, but with SQL2005 it's been renamed "SQL Server Express". This is a cut-down version (it's only capable of exploiting a single processor and has a restriction, albeit a fairly generous one, on the maximum database size) that costs nothing to use and which can be redistributed under some very lenient licence terms.
SQL Server 2005 is a genuine step forward for Microsoft's DBMS product line and, as such, ensures that Microsoft will continue to compete successfully with the likes of Oracle.
As with most Microsoft products, the majority of users will probably defer an upgrade from the current version to the new release until they're happy there are no hideous problems.