My suggestion is to use a single script for the initial installation.  Any upgrades or patches, or subsequent versions should be broken up.

 

On first installation, when you are creating the db, you can be reasonably certain through testing that your script will succeed.  On any successive installation action, you cannot be certain that someone didn’t make some change to the database in their installation that will cause your script to fail.  I would separate the scripts, if for no other reason than easier debugging of setup failures, since you’ll be able to log each script separately, and know which script is failing.

 

The comparison to C# or VB code isn’t valid, in my opinion.  Database scripts are completely different.  I would certainly expect that you would keep your scripts separate in your dev tree. My gut feeling is that your msi will be smaller if you use a single file instead of thousands of file, and will execute faster.  There will be fewer entries in the file table, and much less I/O.  Also, you will only have to pay the overhead of connecting to your sql server once, instead of once per table/sp/etc.

 

Just my .02

 

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dana Gutride
Sent: Friday, October 20, 2006 6:32 AM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] Best Practices - Creating Databases

 

Ok, I'll take a stab.  I don't know what the best practice is, but I can tell you what we are doing.  We have a large database with many, many tables and even more stored procedures.  We use one sql file to create the tables (that file is under 100K) and break the stored procedures up into multiple files.  After much testing, we haven't ever had the table creation or the stored procedure creation fail during an MSI install.  I've asked this list and other install lists before what other people are doing and it seems every person you ask does it slightly differently. 

Just to prepare you for what's ahead, it is slightly more difficult to pull off an upgrade successfully.  We have more rollbacks on upgrade because sometimes people have changed the database for one reason or another and then we're left with the database in an unpredictable state.

Dana

On 10/20/06, Douglas Watts <[EMAIL PROTECTED]> wrote:

Anyone?

 


From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]] On Behalf Of Douglas Watts
Sent: Thursday, October 19, 2006 1:16 PM
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Best Practices - Creating Databases

 

This is a "best practices" question.  I need to create a database for my application.  For example sake, let's say I have 100 tables to create along with related indexes and keys.  I can easily generate one large script and use that in my WiX project.  On the other hand, I could break the script down such that I have one script per table.  Of course, numerous other possibilities exist as well.  What is the "best practice" for this scenario?

 

__________

Doug Watts

 


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642

_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

 

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to