I promised an update on SQL Express availability in my last post about the release of SQL Server 2008 so here it is. SQL Server 2008 Express is now available along with the release of the .NET Framework 3.5 SP1, which is a prerequisite and Visual Studio Express SP1. As I mentioned, there are two more editions of SQL Express on the way. There are a number of prerequisites for SQL Server 2008 that you will have to install on your own before installing SQL Express. Here is the list and basic instructions:

  1. Install the .NET Framework 3.5 SP1 located here.
  2. Install Windows Installer 4.5 located here.
  3. Install SQL Express 2008 from here.

Windows Installer 4.5 requires a reboot on almost every system out there and SQL Express will fail if there are any pending reboots on the system so I suggested doing the following:

  1. Install all the prerequisites in a row and then reboot at the end of installing the prerequisites.
    1. If you magically already have the prerequisites (which should be impossible at the time of this writing since .NET just came out) you should just reboot before installing SQL Express to save yourself the frustration if you have pending reboots on the system.)
  2. After rebooting, install SQL Express from the Express web site. (While you're there, feel free to register. You'll get an e-mail pointing you to various registration benefits.)

A note about Visual Studio Express SP1

Visual Studio 2008 Express SP1 includes the installation of SQL Express 2008; if you have an earlier version of SQL Express on your computer you will be offered the option to upgrade to SQL Express 2008. There are a couple cases where this offered upgrade will fail that you should be aware of:

  • If you have the 64bit version of a prerelease version of SQL Express 2008 on your computer. Visual Studio only installs the 32bit version, even on 64bit machines. See below for more info on cross-architecture upgrades.
  • If you have a different edition installed to the instance name SQLEXPRESS, for example SQL Express with Advanced Services. It isn't uncommon for people to have upgraded their copies of SQL Express to SQL Express w/ Advanced Services while retaining the instance name. There is no support for down-grading the edition so you'll need to do this manually. You can determine the current edition you have installed either by launching the maintenance dialog from Add/Remove Programs and examining the Engine edition or by simply running "SELECT @@version" from SQLCmd or a query window.

Optional component

SQL Server PowerShell is an option component in SQL Express 2008. Optional in this case means that we do not make Windows PowerShell 1.0 a prerequisite for SQL Express 2008, but it is required to use the new SQL PowerShell scripting. If you're interested in playing with SQL Server PowerShell, you should install Windows PowerShell 1.0 before you install SQL Express for it to work correctly. You can find the correct PowerShell installer from this page. If you have already installed SQL Express and still want to play with PowerShell, you'll need to repair you installation of SQL Express after you've installed PowerShell. In order to repair SQL Express you'll need to download it again (unless you happened to save your installer files) and select Repair when you see the Installation Center.

Pre-release software

If you have the February CTP (this is the one that was installed by Visual Studio Express 2008 SP1 Beta) or the Release Candidate of SQL Express, you should be able to do an in place upgrade to the final release, no uninstall required. When the Installation Center opens up, choose the option to upgrade from either SQL 2000 or SQL 2005. I know you're upgrading from a 2008 version and it doesn't say that, but trust me, that is the correct path to follow. You will still need to apply the prerequisites before performing this upgrade.

If you have the November CTP of SQL Express, you will need to remove that before upgrading to the final release.

Upgrade & Architecture

With SQL Server 2008 we are releasing a 64bit version of SQL Express for the first time. SQL Express doesn't support cross-architecture, in-place upgrade, meaning you can't upgrade a 32bit copy of SQL Express to the 64bit copy. The only way to do this upgrade is side by side. You will need to either remove the old 32-bit version if you want to preserve your instance name, or you can install the 64bit version to a new instance name. We do still support 32bit to 32bit upgrade and we do still have a WoW enabled copy of SQL Express available from the download center.

Have fun!

- Mike