2011-09-20 104 views
2

场景:SQL数据库部署

我写了一个软件应用程序,包括安装程序,要由外行先生被用来到一台计算机上安装该系统。

该系统是一个简单的C#winforms应用程序与SQL Express数据库。目标机器是安装了SQL Express和.NET 3.5的Windows XP的标准安装。

我能够为winforms应用程序创建安装程序,它将检查版本,创建所有目录并复制所有必要的可执行文件等。我还有一个SQL脚本,它将创建数据库并将其填充必要的数据。但是,我不知道如何去为目标机器上的数据库创建一个独立的安装程序。

我有一个SQL脚本将创建数据库等,但我如何使安装程序运行此脚本?我有一个谷歌,我真的不知道我在找什么,请有人指出我在正确的方向。

预先感谢您。

+0

如果您尚未拥有RDBMS,那么您可能需要考虑SQLite(http://sqlite.org/)。它很轻量级,性能也很好(只要你没有使用“大数据”的东西),并且不需要繁琐的设置。 – 2011-09-20 14:59:32

+0

你不能只将数据库作为mdf文件嵌入到你的项目中并以这种方式部署吗? – Simon

回答

0

在安装程序项目中创建一个自定义操作,该自定义操作会将您的SQL脚本运行并针对数据库运行。这是一个涵盖基本知识的MSDN link

+0

我会看看这个,谢谢。 – Craig

0

它运行的SQL脚本的安装程序可以通过两种方式创建:

非常坚硬方式:

  • 创建与检索SQL连接信息
  • 保存这些信息自定义对话框安装以某种方式(在MSI包中,您可以使用安装程序属性)
  • 编写一个自定义操作,使用该信息连接到SQL Server并运行脚本

最简单的办法:

  • 使用安装创作工具,它支持SQL脚本

如果你想要一个免费的解决方案,我建议WiX。它有一个陡峭的学习曲线,但它可以满足你的需求。