Cast Fonksiyonu

06 Temmuz 2007

İlk olarak Cast Fonksiyonun kullanılması ile ilgili bir senaryomuz var, burdaki soruna çözüm bulalım. Aşağıdaki gibi tanımlanmış bir TblDepartmanlar tablomuz var ve colonlarından olan DepartmanID nvarchar(50) olarak tanımlanmış.


Dikkat!!! DepartmanID nvarchar(50) olarak tanımlanmış

Resim-1: Tablonun Tanımlanması


Yapmamız istenilen sorgu ise şu; DepartmanID leri 3 ile 8 arasındaki departmanların IDlerinin ve o IDlere ait departman isimlerinin listelenmesi.

Taralı alan sorguda istenilen satırları gösteriyor

Resim-2: Sorguda istenilen alanlar


Bu durumda karşımıza çıkacak sorun şu; DepartmanID int olmadığı için doğrudan between and kelimelerini kullanarak bir sorgu yazamayacağız.

Çözüm olarak bir dönüşüm yapmamız gerekecek. Eğer nvarchar(50) yi int'e çevirebilirsek sorgumuzu kolayca yazabiliriz.

İşte burada karşımıza dönüşümlerde kullancağımız fonksiyonlar çıkıyor. Bu Senaryoya Çözümü CAST fonksiyonu ile sunalım;

Sorgu Cümleciği

Resim-3: Sorgu Cümlemiz

Sonuç:

Sonuç



3 yorum:

Adsız dedi ki...

Ellerinize sağlık çok güzel olmuş.İlk defa bi blog sayesinde güzel bir şey öğrendim

Adsız dedi ki...

aslı bana cast'ın aspdeki karşılığını söylermisin bulamıom ya :(

Aslı dedi ki...

string a="5";
int b=3;

int toplam = Convert.ToInt32(a)+b;

şeklinde bir kod yazarsan cevap 8 olur. Cast in yaptığı işi asp.net te Convert ifadesini kullanarak yapabiliriz.