优势数据库或SQL Server

3
我有一个客户目前在他们的个人电脑上使用本地Advantage数据库和应用程序。他们正在考虑升级他们的设置,使多个应用程序运行并与数据库服务器通信,即客户端-服务器环境。
现在他们正在考虑最适合这种方法的数据库。他们正在比较Advantage Database Server产品和SQL Server Express(该应用程序目前不需要完整的SQL Server)。
显然,SQL Server是一个更知名的产品,可能有更多的支持,但我希望您能给我一些意见和想法,以便在性能、稳定性和支持方面选择最佳产品。
需要注意的一点,尽管不是直接相关的,是该应用程序当前是用Delphi编写的,可能会转移到C#来更新它。
5个回答

3
从本地Advantage数据库迁移到客户端/服务器Advantage数据库是一个非常简单的过程。它只涉及在程序中更改连接属性。不需要进行其他编码更改。
Advantage拥有出色的支持团队,并已经开发了15年以上。稳定性和支持至少与SQL Server相当。
Advantage还提供了一个.NET数据提供程序,可以实现C#开发。

3
我已经开发了SQL Server和Advantage。它们各有优缺点(尽管现在我更喜欢Advantage)。
考虑到您的情况,这个决定似乎是一个轻而易举的选择:Advantage数据库服务器。为什么?因为它已经完成了!
我的Advantage程序在本地或远程相同的数据库上运行,无需修改。我只改变连接字符串。我并不是说客户的代码不需要改变。我是说这很可能是微不足道的。相比于切换到全新的数据库引擎所涉及的更大努力,这是微不足道的。

该应用程序可能会被重写为C#,因此在这种情况下,数据库更改不是一个大问题。 - Jon
无论您将主代码更改为何种语言(C#,Delphi等),与数据库的连接都需要自行处理。 鉴于一切都是为了支持Advantage(是的,我每天使用它),并且因为您真的不需要在处理转换时为自己购买额外的工作量,我建议您坚持使用Advantage。 在两种情况下,我比SQL Server更喜欢它,但在这种情况下,如果您从Advantage切换,那么您只是在寻找额外的工作。 转移到Advantage Database Server,轻松快捷,您会感到高兴。 - Doug Johnson-Cookloose

3

一般来说,我是完全使用SQL Server的人。我每天都在使用它,已经使用了近十年了。但在您的情况下,考虑转移到新数据库似乎是愚蠢的,因为您已经有一个清晰的升级路径,可以使用您已经拥有的后端来实现您想要的功能。如果您仍然使用同一数据库系列,那么工作量将会更少,而且不太可能引入新的错误。


该应用程序可以使用C#进行重写,因此在这种情况下,数据库更改不会是一个大问题。 - Jon

2
我碰巧是Advantage的支持代表,所以当你说“显然SQL Server是一个更为知名的产品,可能有更多的支持”时,我必须反驳一下。
正如Chris所说,从Advantage Local Server切换到Advantage Remote(客户端/服务器)Server是一个相当轻松的过程——他们就是这样设计的。
  1. 在存储数据的机器上安装 Advantage 数据库服务器(不是必需的,但建议这样做)。您可以在此处免费获取试用版:http://marketing.ianywhere.com/forms/ADS91-30-Day

  2. 应用程序中将会有 TAdsConnection 组件 - 将 TAdsConnection.ConnectionType 更改为“REMOTE”(http://devzone.advantagedatabase.com/dz/webhelp/Advantage9.1/mergedProjects/ade/sec7/connectiontype.htm

  3. 可以以几种不同的方式从客户端指定路径(TAdsConnection.ConnectPath),但建议使用以下方式: \\server:6262\mydata

http://devzone.advantagedatabase.com/dz/webhelp/Advantage9.1/mergedProjects/ade/sec7/connectpath_tadsconnection.htm

注意:默认情况下使用的端口是6262(可能需要在防火墙中添加例外)。如果您的应用程序使用数据字典,则路径将包括.ADD文件的名称(例如\\server:6262\mydata\mydd.add)。
希望这可以帮助到您!

ADD做什么,你有任何例子吗? - Jon
@Jon Advantage Data Dictionary 简而言之,允许您存储有关所有 ADS 表的元数据,从而打开了一系列功能的可能性,包括: -引用完整性 -默认字段值 -字段级约束 -灵活的用户访问控制 -存储视图 -存储过程 -触发器还有其他功能...欲了解更多信息,请查看帮助文件:http://devzone.advantagedatabase.com/dz/webhelp/Advantage9.1/advantage_concepts/advantage_functionality/advantage_data_dictionary.htm此外,从非 ADD 环境(自由表)切换到使用 ADD 很容易。 - Joshery
我们在开发者网站上有示例代码:http://devzone.advantagedatabase.com/ 只需转到菜单中的 CodeCentral。如果您需要特定示例,请让我知道,我可能能够指引您正确的方向。 - Joshery
所有的帮助文件也都在线上。请在http://devzone.advantagedatabase.com菜单栏中查看“在线帮助文件和文档”。 - Jeremy Mullin

2
ADS无疑是最佳选择。它不需要维护,极其可靠,速度非常快,可扩展性强。SQL得到很好的支持,ADS新闻组响应迅速(与SQL服务器论坛相比,答案在几小时内而非几天内),并且知识渊博。我从1991年开始使用ADS,从未出现过问题!我的用户要求极高,能够在几小时内而非几天内提供解决方案,这对我来说既是一种乐趣,也是对最终用户和客户的业务激励。部署温和、快速、简单。平台支持优于SQL服务器。64位服务器部署广泛,并且具有良好的基础、透明性和可靠性。64位客户端将在下一个版本(10)中推出。我的ADS经验完全积极,而我的SQL服务器风险重重,存在许多困难、怪异之处和解决方案!

我必须在一个观点上表示不同意,我发现 SQL Server 论坛的回答时间是秒或分钟级别的,而不是几天。也许你去了错误的论坛。 - HLGEM
我必须表示不同意,因为我经常遇到与Advantage数据库的兼容性问题和无法解决的错误。另一方面,微软和开发人员已经构建了许多方法,让SQL Server能够与许多其他类型的常见应用程序和数据库一起工作。此外,Advantage的文档很难找到,而我找到的内容也不足够。另一方面,有无数的SQL Server文档来源。 - glenn garson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接