Uninstalling VS Setup project prerequisites - sql-server-2008

We currently use a VS 2010 (upgraded from 2008) setup project to install our application, and utilize the SQL Server 2008 install prerequisite.
Well wouldn't you know, management has got it in their head that everything (including prerequisites, but not .net) that's installed by the application must now be uninstalled by the uninstaller.
So I'm trying to modify the installer to uninstall SQL Server Express 2008.
I first thought that I could modify the package.xml dependency for sql server to trigger the right install conditions so I could pass in the uninstall arguments, but I'm at a loss as to what those conditions would be.
Then I thought about using a custom install action and System.Diagnostics.Process to programmatically invoke the sql express installer with uninstall command flags, but I'm not sure if I can guarantee that the installer will make that executable accessible for uninstallation.
Any ideas?

Um, uninstalling sql server express is bad. What if another application was later added that relies on this? Your uninstaller would break that application.
Management is right, though: you should uninstall everything you installed in the first place.
So what is the solution then? As they say, "damned if you do, damned if you don't".
Fortunately, if this is for a desktop application the answer is simple: don't use Sql Server Express Edition. Express Edition is really a server class engine. Sql Server Compact Edition is much more suited to this scenario, and will solve your deployment issues.
If this is for a server application, it's a little trickier. Any well-behaving installer will create it's own instance of Sql Server Express. You then need to make sure you uninstall only your instance (and also make sure your install is well-behaving). This doesn't really solve the problem, but at least it lets you say it's their bug and not your if something breaks after your uninstaller runs. Unfortunately, you still have to build this part manually.

Related

Need to run SSIS via a remote application

I'm running into this issue basically:
Can I deploy & Use SSIS SQL server DTS DLL's onto a machine that does not have SQL server 2008 installed?
Since it's been answered I don't know if my request for further information will get any traction.
I'm running into the same problem I think. When I deploy locally on my dev box, my application calling SSIS works fine. When I deploy my application on Server A, and my SSIS package on Server B (my database server), I get the error mentioned in the post: " An Integration Services class cannot be found. Make sure that Integration Services is correctly installed on the computer that is running the application. Also, make sure that the 64-bit version of Integration Services is installed if you are running a 64-bit application".
If I understand things correctly I need to have an SSIS license on my application Server and my database server?
This doesn't seem to make sense. When you make a SQL call to SQL server, provided you have an enterprise license you only pay once. You don't have to pay for an extra license for your application server.
I just want to make sure I've got this clear before I go to the higher ups, and that my problem isn't stemming from something else. So to put it concisely: Do you need to have an SSIS license for both your app server and your SQL Server when calling an SSIS package remotely?
Just to clarify the 64 vs 32 bit thing: I've got 64 bit OS's running on my local machine, the app server and the database server - and all my VS projects are being built to use "Any CPU".
Sorry for the lengthy post, but I thought I should be thorough on this.
You will need to have SSIS licensed (SQL Server) on any machine that is using SSIS to execute packages.

WiX installing SQLServerSpatial.dll and SQL Server 2008 R2?

We're trying to update our WiX installer to install SQL Server 2008 R2. Regular 2008 seemed to install fine on most machines, but the R2 install seems to fail to install SQLSysClrTypes - so we hit an error with a missing dll called SQLServerSpatial.dll.
Is there a way to get the SQL installer to correctly install this? I have found some discussions of this issue online but no solutions, except for manually installing SQLSysClrTypes.msi after SQL Server.
We want the install to be silent and need the minimum of user interaction.
We're using WiX 3.5 & VS2010.
Edit
Further reading and thinking leads me to understand that SQL 2008 SP1 didn't install SQLServerSpatial.dll either, and it is changes to our code which have made this a requirement now. So my question has become simplier:
Can I configure the SqlServer install to include/install SqlServerSpatial?
or
Can I use WiX to install SQLSysClrTypes.msi (I would need the package.xml and product.xml)? Has anyone done this?
While I am unsure about the changes to SQL Server and why SqlServerSpatial.dll is missing, I can answer with regards to installing prerequisites using a bootstrapper.
Can I use WiX to install SQLSysClrTypes.msi (I would need the package.xml and product.xml)? Has anyone done this?
It sounds like you are using the visual studio bootstrapper. You can use the bootstrapper manifest generator tool to create the bootstrapper manifest (package.xml and product.xml) so that you can create a bootstrapper like you would for other prereqs (for example, the .NET framework).
Of course, if you are open to upgrading to WiX 3.6 (still in beta but pretty stable), you may use the new bootstrapper functionality called Burn to create package bundles in order to chain your packages together.

SQL Server DTA Missing

Slightly OT, but...
I have two named instances of MSSQL 2008 Developer Edition and also SQL Express 2008 with Advanced Services.
I just went to use the DTA, and it is not anywhere on my system.
I went to setup to add it, and see that the checkbox for it is cleared (all others are checked), and it and every other shared tool is greyed out so I can't get it installed.
Before I uninstall all of this stuff, can anyone recommend a way to get this stuff installed.
Thanks.
The bottom line is "don't install SQL Server Express after you install Developer Edition".
I uninstalled all of the Shared Services (Basic Management Tools, etc) for the SQLExpress instance, then installed a new instance of Developer Edition, and I was able to then get the performance tools included. DTA is now back.

Problem using SQLDMO/Vb6 against SQL Server 2008

I have a client, that uses SQLDMO for a portion of a custom application that was written against SQL Server 2000, and they recently upgraded to SQL Server 2008.
The majority of the app still runs fine (doesn't use SQLDMO), but the admin functions which rely on SQLDMO stopped working.
I installed the SQL2005 backward compatibility pack, and now SQLDMO partially works, i.e. I can run "select" type queries, but any "Update" queries fail with the error message:
to connect to the server you must use SQL Server management studio or sql server management objects (SMO)
Any thoughts? Should the backward compatibility pack give me ALL the functionality back, or is this a known issue?
BTW: I realize SQLDMO has been deprecated and will go away next release, none-the-less I need to do what I can to solve the problem at hand.
OK, I figured it out. Not only do you need to apply the "Backward compatibility pack" to the server, you also need to install (and register), the newest SQLDMO.DLL file on each of the client workstations.
Hopefully this save someone else a bit of time someday.

Why can't I install SQL Server SP1 (KB968369)?

I have a Windows Server 2008 x64 machine. I have the "Microsoft SQL Server 2008 Service Pack 1 (KB968368)" as an "optional" update available from Windows Update. I choose to install it, my computer installs it for a while, I restart, and that update is available again. Why doesn't my computer install it?
Thank you.
Not sure, but I had the same problem. Did you ever do an "Edition Upgrade" in the SQL Server 2008 installer? Many users who did such an upgrade are reporting problems with the update package. For me, it wasn't a mission-critical system, so I just uninstalled the whole shebang and then reinstalled.
Other workarounds at Microsoft Connect. These people have problems when it's installed on the same machine as Visual Studio.
FWIW, I find the entire setup experience for SQL Server 2008 to be absolutely miserable.
I think I got the same problem before. I googled around and found that's a known issue My solution is to check something like "don't notify this updates".
do you have any errors in your event log?
I found that I couldn't install it using windows update, I had to manually download it and it installed first time. I also has this problem for SQL 2005 sp2
I solved it. I deleted the PendingFileRenameOperation key in the registry (backed up that registry branch first), ran the install, restarted and it is now in my installed updates list.