Microsoft SQL Server 2008 Express
From WPKG | Open Source Software Deployment and Distribution
Silent installer for Microsoft SQL Server 2008 SP3 Express. Information from http://msdn.microsoft.com/en-us/library/ms144259%28SQL.100%29.aspx#Accounts was useful and confusing in equal measure.
Caveat
Beware: SQL Server has lots of bits; this installer does not install everything nor remove everything. You may well need to tweak according to what you need to install. As it stands, it installs and removes just the basic SQL backend.
Installer
<package id="sqlserver2008sp3exp" name="SQL Server 2008 SP3 Express" revision="1" reboot="false" priority="10"> <check type="uninstall" condition="exists" path="Microsoft SQL Server 2008 (64-bit)"/> <install cmd='%SOFTWARE%\microsoft.com\sqlserver\2008\Express_2008_sp3.exe /Q /ACTION=install /FEATURES=SQL /INSTANCENAME=SQLExpress /AGTSVCACCOUNT="NT AUTHORITY\Network Service" /SQLSVCACCOUNT="NT AUTHORITY\SYSTEM" /SQLSYSADMINACCOUNTS="BUILTIN\Administrators"'> <exit code="3010" reboot="false" /> </install> <remove cmd='"%PROGRAMFILES%\Microsoft SQL Server\100\Setup Bootstrap\Release\x64\setup100.exe" /Action=uninstall /FEATURES=SQLEngine,Replication /INSTANCENAME=SQLExpress /timestamp="%04d%02d%02d_%02d%02d%02d" /Q'> <exit code="-2068578302" /> <!-- Error: no such instance --> </remove> <remove cmd='"%PROGRAMFILES%\Microsoft SQL Server\100\Setup Bootstrap\Release\x64\setup100.exe" /Action=uninstall /FEATURES=SQLEngine,Replication /timestamp="%04d%02d%02d_%02d%02d%02d" /Q'> <exit code="-2068643838" /> <!-- Error: nothing to do --> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{0826F9E4-787E-481D-83E0-BC6A57B056D5}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{2738C4AA-420E-4E13-ADEF-B5AB250E3EF1}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{2F14965D-567B-4E59-ADEB-0A2CC1E3ADDF}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{5340A3B5-3853-4745-BED2-DD9FF5371331}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{6292D514-17A4-403F-98F9-E150F10C043D}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{893F27E6-D6BE-4B9F-80E6-0ADA694A31A8}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{ADBD6E65-46CB-4A97-9AFB-64963FEACC40}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{CC8BA866-16A7-4667-BA0C-C494A1E7B2BF}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{DF167CE3-60E7-44EA-99EC-2507C51F37AE}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{FA7394B8-CE65-4F9E-AC99-F372AD365424}"> <exit code="1605" /> </remove> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{FBD367D1-642F-47CF-B79B-9BE48FB34007}"> <exit code="1605" /> </remove> <!-- Microsoft SQL Server 2008 Browser --> <remove cmd="msiexec /qn /l* c:\netinst\logs\sqlexpress.log /x{C688457E-03FD-4941-923B-A27F4D42A7DD}"> <exit code="1605" /> </remove> <remove cmd='cmd /c del /f /q "%PROGRAMFILES%\Microsoft SQL Server\100"'><exit code="any"/></remove> <remove cmd='cmd /c del /f /q "%PROGRAMFILES%\Microsoft SQL Server\MSSQL10.SQLEXPRESS"'><exit code="any"/></remove> </package>