ISSUE:

You have SQL 2005 SP2 Express Edition or any of earlier version of SQL Express and you decide to apply SP3 to SQL Express edition.

You download the http://www.microsoft.com/downloads/details.aspx?FamilyID=3181842a-4090-4431-acdd-9a1c832e65a6&displaylang=en

And start the setup and suddenly notice the below Error:

The is quite strange as you would say I am not trying to install another Instance of SQL Express but just upgrading the existing instance.

Well, the error is In-appropriate in this case, but you can be sure something is not right. You check the Setup logs present in “C:\Program Files \Microsoft SQL Server\90\Setup Bootstrap\LOG\Summary.txt” and found no major information.

You check the rest of the files present in “Files” folder and in SQLSetup0010_BATALA1_Core(Local).log  you finally find below errors.
Error: Action "ReportChainingResults" threw an exception during execution.

DwLaunchMsiExec() returned : 1638

 Error Code: 0x80070666 (1638)

Windows Error Text: Another version of this product is already installed.  Installation of this version cannot continue.  To configure or remove the existing version of this product, use Add/Remove Programs on the Control Panel.

 

  Source File Name: sqlchaining\sqlchainingactions.cpp

Compiler Timestamp: Sat Oct 25 08:47:07 2008

     Function Name: sqls::ReportChainingResults::perform

Source Line Number: 3416

 

Error: Failed to add file :"C:\Program Files (x86)\Microsoft SQL Server\90\Setup Bootstrap\LOG\Files\SQLSetup0010_BATALA1_.NET Framework 2.0.log" to cab file : "C:\Program Files (x86)\Microsoft SQL Server\90\Setup Bootstrap\LOG\SqlSetup0010.cab" Error Code : 2

Running: UploadDrWatsonLogAction at: 2010/4/11 17:45:32

Message pump returning: 1638

 

CAUSE:

The previous Setup of SQL Express Edition was not done in a recommended way. This happens if you install the SQL Server by extracting the Express Edition and running SQL*.msi files present in \setup folder directly OR invoking SQL*.msi files through msiexec from commandline.

Installing via above method causes a Successful Setup but with incorrect GUID. Default GUID for SQL Express Edition is EB76B218-8FC5-41DF-9F1F-7FF3E0448383. However if you installed the SQL via above msiexec method then the GUID is 6C428277-232D-4CC2-90ED-A1DCFE7DF64F

Due to Incorrect GUID, When you run the SQL SP3 setup, setup is unable to find the GUID EB76B218-8FC5-41DF-9F1F-7FF3E0448383 and goes in to Perform other configurations Checks like checking number of instance\ names of instance. Here it detects that there is an SQL Express Edition already installed and hence reports the above error.

Also if you try to Uninstall this SQL Express Edition, you will not be able to do so.

 POTENTIAL WORKAROUND:

Ideally we should reinstall the SQL Express Edition by taking backup. But you are in trap here because you will also face problem while uninstalling.

The solution remains same i.e to Reinstall the SQL server but as you will not be able to Uninstall SQL Instance directly. You can follow the kb article  to remove SQL Instance manually: http://support.microsoft.com/kb/909967

Sanket Sao
SE, Microsoft SQL Server

Reviewed by 
Ouseph Devis T & Nickson dickson

TL , Microsoft SQL Server