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