2008-09-18 61 views
3

我继承了我们开发和销售多年的VB6/Access应用程序。我们将使用SQL Server 2005 Express Edition和.Net。用于多用户商业应用程序的SQLExpress体验?

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

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

我如何创建一个安装和观点的技术支持点最佳的客户体验?你有什么问题?哪些安装程序有效?

你设置了一个单独的安装服务器/客户端,或者只是提供良好的指示?第一次尝试时,客户会遇到什么样的错误?

回答

3

从Visual Studio部署项目允许你安装一个SQL Server Express实例提供方便。

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

我们的服务器安装涉及安装新的SQL Server或根据需要升级现有安装的模式。客户端安装只是打包客户端所需的文件。您必须考虑升级数据库模式的场景,并确保客户端具有针对新模式的更新客户端版本。我们通过以下简单方式实现:

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

为了获得最佳的用户体验,您希望能够安装新的服务器版本,并使所有客户端能够自动更新。我们有一个方法来做到这一点,如果需要,我可以给你更多的细节。

+0

感谢您的详细信息!客户在第一次安装时如何“找到”服务器?我听说有一家公司要求将S:驱动器映射到服务器上的安装文件夹,然后他们拿起数据库设置。或者,也许你可以导出一个你导入到客户端的配置文件? – 2008-09-19 12:29:29

0

既然你还在考虑要去的SQLExpress,贵集团认为SQLite?您仍然可以拥有所需的数据库功能,而无需在客户端系统上安装引擎。

+0

刚刚了解到它,但这是一个单独的问题。 – 2008-09-18 21:28:29

0

SQL Server 2005易捷版易于安装在任何体面的安装程序中。需要几个小时的工作!如果你的心已经放在它上面,那么别让安装的恐惧阻挡你。

+1

几个小时对我来说?或者几个小时让我的客户安装它? – 2008-09-18 21:43:08

2

有多少用户和多少数据?

我不知道是否有多少用户是一般准则“太多” SQL Express的2005年,但有4GB的硬盘数据限制。我的猜测是,你不会碰到Access的遗产,但它是一件很好的事情要知道。

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

还有SQL Server Compact Edition我相信目标.NET 3.5以及Windows Mobile的。我相信它更类似于像Access那样的“单文件数据库”。

+0

SQL Server 2005 Express的最大数据库大小实际上是4GB。 – Kev 2008-09-18 21:16:40

+0

太多的数据,我们会去SQL Server标准。 – 2008-09-18 21:36:21

1

SQL Express将在访问能力和可靠性方面迈出重大的一步。它不应该需要更多的配置,只要您知道自己在做什么,就可以采用不同的方法。

+0

那么,让他们安装SQL Express,并给出在应用程序中输入连接字符串的好说明? – 2008-09-18 21:42:02

2

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

此外,它比旧的MSDE 2000安装更稳定;我做了噩梦支持。我还发现100次中有99次,使用默认的数据库安装参数可以让人们开心。

SQL Express Weblog

How to install SQL 2008 From the command prompt

+0

默认参数和链接的良好通话。 MSDE是我们坚持使用Access这么久的原因。我很高兴SQLExpress不那么麻烦。 – 2008-09-19 12:32:10

1

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

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

0

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

相关问题