Click here to Skip to main content
15,879,535 members
Articles / Programming Languages / SQL
Article

SQL Packager and InstallShield combined for easy installation and set up of web application

24 Aug 20054 min read 29.6K   3  
Using Red Gate Software’s SQL Packager and MacroVision’s InstallShield to package web site authoring software

This article is in the Product Showcase section for our sponsors at CodeProject. These articles are intended to provide you with information on products and services that we consider useful and of value to developers.

Introduction

If you're providing software that helps customers get a jump-start on building web sites, it makes sense to place it in a package that is simple to install and set up.  For .NET developers at Exia, that meant using a combination of Red Gate Software's SQL Packager and MacroVision's InstallShield to package their web site authoring software.

Exia launched the Exia Web Solution Framework in late 2004.  The product gives users a foundation from which to build web sites instead of starting each project from scratch.

Exia developers base that foundation on SQL and .NET programming.  They build SQL databases and schemas to house web site data such as menu items, content modules, and site hierarchy.  Exia developed an in-house interface to manage the web site, calling up the SQL data as needed.

"The main focus of our business," says Nigel Shaw, Exia president, "is providing a mechanism so that the framework can manage itself and the content will be drawn up from the SQL Server database."

Packaging the application

When a release point is reached, Exia uses SQL Packager to create an executable file of the final SQL database that will be installed on the customer's system.  SQL Packager preserves the structure of the database as well as all of the dependencies within the tables.  Some of the dependencies are if/then scenarios Exia establishes for user type definitions.

"One of our biggest challenges with the product was finding the lowest common denominator," Shaw says.  "We wanted to provide as much functionality as possible for the broadest audience without making it difficult to customize the web site." 

SQL Packager first guides users through selecting schema and data for the new database, then generates scripts to preserve dependencies.  In the final step, the tool automatically packages an executable or .NET project, creating a utility for easy installation.

Image 1
Screenshot 1: Choosing the database objects to be packaged

"We like the .NET project option because that allows us to tweak the code to further customize the application," Shaw says.

Customizations include adding the Exia logo to the file and linking the new database with the web site project.  This is done upon installation by launching a dialog box that asks the customer for the name of the database.  That name is written into the web site project code, so each time the project is opened, the database opens automatically. 

Image 2
Screenshot 2: Customizing the project

After SQL Packager creates the .NET project and Exia's developers make the needed changes, the entire Exia web framework is compiled with InstallShield.  The final executable file for customers bundles the .NET project from SQL Packager and the files from Exia's program interface.

Once Exia delivers the framework to a customer, the InstallShield executable extracts files, tools, code and the SQL Packager .NET project and saves them in the appropriate folders on the local system.  SQL Packager detects local SQL server instances and prompts the user to select the appropriate location for the new database.

Image 3
Screenshot 3: Installing the database from the SQL Packager package

A unique combination

Bringing easy installation to the Exia Solution Framework requires the unique combination of SQL Packager and InstallShield.  Without SQL Packager, Exia would have to create a script that launches SQL Server, a task that would add five or more days to a typical project.  It would also have made it difficult to detect problems and incorporate functionality such as the automatic dialog box asking for the database name. 

"We really like the professional interface SQL Packager generates," says Shaw.  "Using a script to package the SQL database would open a DOS box where the scripts just run, giving the user no choice about where to save the database nor any indication of how the installation is progressing."

InstallShield nicely packages and then installs all of the components of the Exia Web Framework.  Using SQL Packager alone wouldn't enable Exia to deliver the framework to customers within a neat, easy-to-install graphical interface. 

"The pairing of SQL Packager and InstallShield is ideal for our web framework solution," Shaw says.  "We needed a process that could package the final database and install the other tools and code needed to run our program."

To try out SQL Packager, download a fully functional, fully supported free trial from Red Gate's website.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here


Written By
Red Gate Software Ltd.
United Kingdom United Kingdom
Redgate makes ingeniously simple software used by 804,745 IT professionals and counting, and is the leading Microsoft SQL Server tools vendor. Our philosophy is to design highly usable, reliable tools which elegantly solve the problems developers and DBAs face every day, and help them adopt database DevOps. As a result, more than 100,000 companies use products in the Redgate SQL Toolbelt, including 91% of those in the Fortune 100.
This is a Organisation

1 members

Comments and Discussions

 
-- There are no messages in this forum --