Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Harf duyarsız Collation
#1
Arama işlemlerinde aksan özelliği hariç harf duyarsız collation oluşturmaya çalışıyorum.
Örneğin, "a" ve "A" gelmeli ancak "â" ve "Â" gelmemeli.

Sadece "ACCENT INSENSITIVE" olduğunda harf duyarsız hale geliyor. Ancak şapkalı "a" lar da sonuç listesine ekleniyor.

Indexler devre dışı kalmadan Collation veya farklı bir yöntemle yukarıda belirttiğim örneğe göre çözüm öneriniz var mı?

CREATE COLLATION pxw_turk_ci_as
FOR WIN1254
FROM PXW_TURK
PAD SPACE
CASE INSENSITIVE -- Çalışmıyor
ACCENT SENSITIVE
Cevapla
#2
Böyle bir yöntem buldum...Containing ve Lower
UNIQUERY1.Close;
UNIQUERY1.SQL.Clear;
UNIQUERY1.SQL.Add('select * From KAYITLAR Where LOWER(ADISOYADI) containing LOWER('''+COMBOBOX1.Text+''')'); //ad soyad arama paranteze tırnaklara dikkat
UNIQUERY1.SQL.Add(' OR TCKIMLIK CONTAINING '''+COMBOBOX1.Text +'''');// tc no arama
UNIQUERY1.SQL.Add(' ORDER BY ADISOYADI collate pxw_turk ASC'); // 
UNIQUERY1.Prepare;
UNIQUERY1.Open;
Cevapla
#3
@COMMANDX , ilgin ve önerin için teşekkür ederim ama bu işin veritabanı tarafında yapılmasını amaçlıyorum.
Cevapla




Konuyu Okuyanlar: 1 Ziyaretçi