3

我继承了我们多年来开发和销售的 VB6/Access 应用程序。我们将使用 SQL Server 2005 Express Edition 和 .Net。

该应用程序可以是多用户的。目前,客户的设置很简单——导航到文件夹以在首次启动时创建数据库;第二个用户浏览到同一个文件。

如果我们使用 SQLExpress,我相信我们的应用程序需要更多的参与才能在服务器上配置 SQLExpress。但我认为我们将获得更好的安全性,并且(无需更改代码)为大客户提供 SQL 版本。

从安装和技术支持的角度来看,我如何才能创造最佳的客户体验?你遇到了哪些问题?哪些安装程序有效?

您是否为服务器/客户端设置了单独的安装,或者只是提供了良好的说明?客户在第一次尝试时会犯什么错误?

4

8 回答 8

3

Visual Studio 中的部署项目允许您轻松安装 SQL Server Express 实例。

我们的应用程序有相同的场景,这意味着您确实需要单独安装客户端和服务器。

我们的服务器安装处理安装新的 SQL Server 或在必要时升级现有安装的架构。客户端安装只是将客户端所需的文件打包。您必须考虑升级数据库架构并确保客户端具有适用于新架构的更新客户端版本的场景。我们通过以下简单方式实现这一目标:

在数据库中存储版本 ID,例如 1.0.1 更新客户端应用程序的 AssemblyInfo.cs 并确保程序集版本与存储在数据库中的版本匹配。如果没有,它会提示用户安装新版本。

为了获得最佳用户体验,您希望能够安装新的服务器版本并让所有客户端自动更新。我们有一种方法可以做到这一点,如果需要,我可以为您提供更多详细信息。

于 2008-09-18T22:00:56.430 回答
2

有多少用户和多少数据?

我不知道是否有关于 SQL Express 2005 有多少用户“太多”的一般准则,但硬数据限制为 4GB。我的猜测是,您不会因为 Access 遗产而受到影响,但知道这将是一件好事。

您可以自动安装 SQL Express。我已经看到它完成了,因为我妻子安装的东西做到了,她是我怀疑安装它的最后一个人。

还有我认为面向 .NET 3.5 和 Windows Mobile的SQL Server Compact Edition 。我相信它更类似于 Access 中的“单文件数据库”位。

于 2008-09-18T21:13:35.653 回答
2

我建议走 SQL Express 路线并将其包含在安装包中。安装程序有很多命令行选项,您可以使用 SQL 脚本对数据库进行任何安装后配置(即启用/禁用 CLR 集成、OpenRowset 和其他功能)。

此外,它比旧的 MSDE 2000 安装更稳定;我做噩梦支持这一点。我还发现 100 次中有 99 次设置默认的数据库安装参数会让人们感到高兴。

SQL Express 博客

如何从命令提示符安装 SQL 2008

于 2008-09-18T21:50:26.953 回答
1

SQL Express 在功能和可靠性方面将比 Access 迈出一大步。它不应该需要任何更多的配置,只要你知道你在做什么,就需要一种不同的方法。

于 2008-09-18T21:15:24.727 回答
1

在我的公司,我们经常使用它。在较慢的机器上启动时间慢有一些问题。

安装体验并不完美 - 有一个实用程序可以恢复应用程序用作数据库模板的数据库。

于 2008-09-18T22:06:53.607 回答
0

由于您仍在考虑使用 SQLExpress,您的团队是否考虑过SQLite?您仍然可以拥有所需的数据库功能,而无需在客户端系统上安装引擎。

于 2008-09-18T21:11:38.730 回答
0

SQL Server 2005 Express Edition 可以使用任何合适的安装程序轻松安装。几个小时的工作就足够了!如果您一心一意,请不要让安装的恐惧阻碍您。

于 2008-09-18T21:11:59.947 回答
0

另一种选择:我相信您也可以在“文件模式”中使用 SQL Server Express,您只需指向 MDF 文件,而不必运行 SQL Server 实例。这与听起来您当前的应用程序使用 Access 的方式非常相似。我不确定这在多用户情况下如何工作,但可能需要调查。

于 2008-09-18T23:18:57.567 回答