有针对多用户商业应用程序的SQLExpress经验吗?

时间:2020-03-06 14:23:30  来源:igfitidea点击:

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

该应用程序可以是多用户。当前,对于客户而言,安装很简单-导航至该文件夹以在首次启动时创建数据库;第二个用户浏览到相同的文件。

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

如何从安装和技术支持的角度创造最佳的客户体验?我们遇到了什么问题?哪些安装程序有效?

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

解决方案

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

SQL Server 2005 Express Edition可以通过任何合适的安装程序轻松安装。只需几个小时的工作!如果我们坚定不移,请不要因为担心安装而使我们退缩。

多少用户和多少数据?

我不知道对于SQL Express 2005有多少用户"太多"是否有通用准则,但是硬数据限制为4GB。我的猜测是,我们不会对Access的传统有所了解,但这是一件好事。

我们可以使SQL Express的安装自动化。我看到它完成了,因为我妻子安装了某个东西,而她是我怀疑要安装的最后一个人。

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

SQL Express将在功能和可靠性方面比Access向前迈出一大步。它不需要任何其他配置,只要我们知道自己在做什么,就可以采用其他方法。

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

另外,它比旧的MSDE 2000安装要稳定得多。我做噩梦支持。我还发现有100的99倍,使用默认的DB安装参数会让人们感到高兴。

SQL Express网站日志

如何在命令提示符下安装SQL 2008

通过Visual Studio的部署项目,我们可以轻松安装SQL Server Express实例。

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

我们的服务器安装涉及安装新的SQL Server或者在必要时升级现有安装的架构。客户端安装仅打包客户端所需的文件。我们必须考虑以下场景:升级数据库架构,并确保客户端具有与新架构兼容的更新的客户端版本。我们通过以下简单方式实现了这一目标:

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

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

在我公司,我们经常使用它。在速度较慢的计算机上启动速度较慢时出现了一些问题。

卸载体验并不完美,有一个实用程序可以还原数据库,该应用程序将其用作数据库模板。

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