I have created an application using C# which makes use of a MSSQL Express database. Now that my project is completed I would like to package the application and database into a single executable which can be run on any machine making use of the .net 3.5 framework.
My questions are:
1. Am I able to package both the application and database into a single executable?
2. If I am able to do 1, will the user need to download and configure a copy of MSSQL Express edition in order to run the application?

Yes but it is not a good idea.

I would include the SQL Server Installation file separately and created a "Install Wizard" in your application to run the installer with the parameters required for your set up.

The reason for this is because in some cases the user will already have SQL Server installed and may want to add another database on an existing instance. If this is run in a networked environment then it also creates a "heavy" installer if it has SQL Embedded in it -- they have to copy the installed w/ SQL Server to every machine they want to install on. You should keep your installer as light as possible.

[edit]
Someone on this forum also created an install condition for the deployment project that required SQL Server being installed. I also do not think this is a good idea because they may be running the SQL Server on another machine...
[/edit]

Edited 7 Years Ago by sknake: n/a

i think the answer to your question is no. you can not pack it to single executable. the user has to have sql server express installed. if you work with embeded sql server, it may work the way you expected. You can do that with ms access since it is file based, but still if the user does not have access installed, your application will fail.

can i install oracle application server 10g and oracle database 10g in a single machine i can work it normally.now am using windowsxp professional

This article has been dead for over six months. Start a new discussion instead.