2

我将一个Delphi程序从BDE转换为Advantage数据库。Advantage数据库索引整理序列

在周末我使用Delphi XE在Win 7机器上工作。在我用Delphi 7

优势表工作正常的Win 7的机器上,但是当复制到XP的机器不能访问的Win XP的机器上工作的一周 - Error 5175 the index was created with a different collation sequence

我已经搜查了网,甚至进入Advantage论坛,但找不到有用的东西。

XP和Win 7的设置都与位置等相同。表格属性列出排序顺序为空白。

任何人都知道是什么造成了这种情况,以及如何解决。我尝试删除和重新创建索引,但无济于事。

+0

偷步一点。如果您尝试打开Advantage Data Architect表而不是仅仅检查它的属性,它会为您提供一个reindexing选项,它似乎可以解决问题。所以我有一个解决方法。我仍然想知道问题是什么。 – 2013-02-28 08:43:03

回答

5

用于创建或打开索引文件的排序顺序取决于您要连接到的remote serverlocal server配置了什么排序顺序。

对于Advantage Local Server (ALS)这可以在adslocal.cfg配置文件中设置。

必须重新安装专用的Advantage Database Server (ADS)以更改排序规则,因为安装程序会将排序规则“烘焙”到服务器可执行文件中(至少据我所知)。

除此之外,如果在安装ADS组件时选择<CURRENT SYSTEM LANGUAGE>(或类似),则不同操作系统版本和操作系统语言的排序规则有所不同。这是在帮助描述:

  1. 这第一个选项,强烈建议,并确保在ANSI整理语言是所有连接相同的更容易的方法。在安装Advantage Database Server和Advantage客户端时特别选择ANSI归类语言。确保为所有安装指定相同的ANSI语言。在Advantage客户端安装期间选择的ANSI归类语言将被放置在Advantage Local Server配置文件ADSLOCAL.CFG中。
  2. 如果您不希望使用上述选项1,请在安装Advantage Database Server和Advantage客户端时选择ANSI归类语言。只有在以下所有条件均为真时才能选择。用于安装Advantage Database Server的所有计算机都应运行相同的Windows操作系统。运行连接到Advantage Local Server的应用程序的计算机也应运行相同的操作系统。除操作系统相同外,所有计算机都应使用相同的ANSI归类语言(通过区域设置图标指定)。

http://devzone.advantagedatabase.com/dz/webhelp/advantage10/master_avoiding_ansi_collation_mismatch_errors.htm

http://devzone.advantagedatabase.com/dz/webhelp/advantage10/index.html?error_5175_ae_index_collation_mismatch.htm

+0

Hi Jens。对不起,我应该提到它的本地服务器。这意味着adslocal.cfg在两台机器上不同。我现在无法检查,因为我无法访问Win 7盒子,但我会在周末查看它。目前尚不清楚(至少对我来说)他们为什么会有所不同。两者都运行相同的安装程序。 – 2013-02-28 11:39:20

+3

@GrahamSaint在安装过程中您选择了哪种整理?问题是,如果您选择“当前系统整理”,它在操作系统版本和操作系统语言之间有所不同...因此,您应该确保使用明确的整理。 – 2013-02-28 11:44:28

+0

嗨Jens,adslocal.cfg文件在两台机器上都是相同的。我只是在安装时接受了默认值,但显然这些在Win 7和XP中的工作方式不同。看起来Win 7的安装足够聪明,知道我有澳大利亚键盘,而XP只是看到我有英文键盘并假设美国。当我有时间时,我会通过卸载并重新安装来验证这一点。感谢大家的回应。 – 2013-03-07 09:14:11