MSSQL büyük küçük harf duyarlılığı (case sensitive)
Selamlar,
MSSQL'de büyük küçük harf uyumluluğu bazı durumlarda gerekebilir. Varsayılan olarak bu uyumluluk aranmaz. Ancak bazı durumlar bu duyarlılığı gerektiriyor.
İşin mantığı nedir? Neden böyle bir şey var?
Büyük ve küçük harfler farklı olarak işlemci tarafından yorumlanır. CPU tarafında bunlar 1 ve 0'lar olarak (yani binary -ikili- olarak) yorumlanır. Eğer SQL server üzerinde kodlarımızı binary şeklinde gönderirsek, CPU da sorguyu bu şekilde yorumlar ve biz de duyarlılığa göre cevap alırız.
Bunu yapmanın da yolları var tabi.
Önce CAST ile veriyi dönüştürmeyi deneyelim.
Sorgumuz şöyle olmalı:
SELECT * FROM Urunler WHERE CAST(UrunAdi as binary) = CAST('iPhone' as binary)
Diğer yöntem ise Collate SQL_Latin1_General_CP1254_CS_AS yöntemidir.
SELECT * FROM Urunler WHERE UrunAdi Collate SQL_Latin1_General_CP1254_CS_AS = 'iphone'
Bu da işinizi görecektir.
İyi çalışmalar,
Recep.
Bu gönderiyi 19.09.2018 14:28:22 tarihinde Rserit düzenledi.