Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Sqlite' da LIKE sorgsunda Türkçe Karakter Sorunu?

select *from urunler where musteri like %ir%;

veriler:


+---musteri---+---ID--+
+-------------+-------+
+---İrem------+---1---+
+---Kadir-----+---2---+
+---Demir-----+---3---+


dönen sonuç:

Kadir
Demir

like %İr% verirsem de İrem geliyor diğer veriler gelmiyor diğer karakterlerde de sıkıntı oluşturduğunu bazı makalelerde okudum ancak kesin bir çözüm bulamıyorum c# (mono android) yazılımı geliştiriyorum ancak çözümsüzüm yardımlarınız bekliyorum
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Cevaplar

  • besimler adlı üyenin fotoğrafı
    9 yıl önce yazılmış
    10 cevap - 6 soru
    'or' kullanmayı denedin mi? Ya da,

    str_replace ("İ","i",$degisken) gibi ifadeler.
    • mcxxx adlı üyenin fotoğrafı mcxxx
      evet denedim olmuyor ama nasıl yapılacağını buldum şimdi paylaşacağım SQLite ın ASCII karakter sisteminden kaynaklanır...
      9 yıl önce yazılmış
  • mcxxx adlı üyenin fotoğrafı
    9 yıl önce yazılmış
    7 cevap - 5 soru
    [Mono.Data.Sqlite.SqliteFunction(Name = "TOUPPER", Arguments = 1, FuncType = FunctionType.Scalar)]
        public class TOUPPER: Mono.Data.Sqlite.SqliteFunction
        {
    	    public override object Invoke(object[] args)
            {
    		    return args[0].ToString().ToUpper();
           	}
        }		
        	
    	[Mono.Data.Sqlite.SqliteFunction(Name = "COLLATION_CASE_INSENSITIVE", FuncType = FunctionType.Collation)]
    	class CollationCaseInsensitive : Mono.Data.Sqlite.SqliteFunction
    	{
    		public override int Compare(string param1, string param2) 
    		{
    			return String.Compare(param1, param2, true);
    		}
    	} 
    
    
    TOUPPER.RegisterFunction(typeof(TOUPPER));
    CollationCaseInsensitive.RegisterFunction(typeof(CollationCaseInsensitive));
    
    
    bunlar iş görüyor...