2016-11-23 6 views
0

^や!などの特殊文字を含む文字列のソートに問題があります。 Firebirdデータベースに保存します。Anydac TADTableコンポーネントの照合問題

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

unicode_ci_ai以下の設定でTADTableコンポーネントとの照合を使用するテーブルを使用する場合

サーバが!で始まる文字列の前に^で始まる文字列を入れますが、TADTableは反対のことを行います。これにより、レコードを削除するときに重複が発生します。

特殊文字で文字列をソートするときのベストプラクティスを探しています。私は速度のためにTADTable(レガシーシステム)とライブデータウィンドウモードを使用する必要があります。

ありがとうございます。

答えて

0

これは、デフォルトの文字エンコーディングが異なるデータベース接続とよく似ています。 Firebird Character Sets and Collations

+0

私はそれが照合の問題であると確信しています。サーバーとクライアントの照合を同期させるのに問題があります。私はあなたが数回参照したサイトを読んで、役に立たない提案を実装しました。私はいくつかのコードサンプルを探していると思います。 – cjmarques