2016-11-23 39 views
0

我遇到了排序字符串有問題,如^和!在Firebird數據庫中。Anydac TADTable組件排序問題

當使用具有以下設置的TADTable組件和使用覈對表unicode_ci_ai

CachedUpdates := false; 
FetchOptions.Unidirectional := false; 
FetchOptions.CursorKind := ckAutomatic; 
FetchOptions.Mode := fmOnDemand; 
FormatOptions.SortOptions := [soNoCase]; 

服務器會將這個開即用!開頭的字符串之前^開頭的字符串,但TADTable則正好相反。這會導致記錄翻錄時出現重複。

我正在尋找排序特殊字符的字符串時的最佳做法。我必須使用TADTable(遺留系統)和實時數據窗口模式來提高速度。

謝謝。

回答

0

這很可能是由於數據庫連接具有不同的默認字符編碼。請參閱Firebird Character Sets and Collations

+0

我確定這是一個排序規則問題。我在同步服務器和客戶端排序規則時遇到問題。我已經閱讀了你引用了幾次的網站,並且實施了一些無效的建議。我想我正在尋找一些代碼示例或更深入瞭解這一切如何工作。 – cjmarques