08 December 2016

SQL Değişkenler ve Tip Dönüşümleri

C# konularından bahsederken burada  değişkenin tanımına değinmiştim. SQL’de de değişken aynı şekilde “verilerin bellekte geçici olarak kaydedilmesini sağlayan değerdir“.

SQL Serverde global ve local diye 2 tür değişken vardır. Local değişkenler “@” ön eki alır, kullanıcı tarafından oluşturulur. Global değişkenler “@@” ön eki alır, SQL Server tarafından tanımlanmıştır, kullanıcı tarafından oluşturulmazlar.

Değişken Tanımlama

Değişken tanımlamak için DECLARE ifadesi kullanılır.

Kullanım şekli:

DECLARE @degisken_adi veri_tipi (boyut)

Örnek:

declare @kimlikno int

Birden fazla değişken tek bir DECLARE ifadesi ile tanımlanabilir.

declare @kimlikno int,
@telno char(10)

Değişken İsimlendirme Kuralları

  • değişken adı bir harf yada alt çizgi ile başlamalıdır.
  •  isimlendirmede Türkçe karakterler veya boşluk kullanılmaz.
  • değişken ismi SQL özel anlamlı sembollerle başlamaz (@, @@, #, ##, $ gibi)
  •  isimlendirmede SQL komutları kullanılmaz (SELECT, CREATE gibi)
  •  isimler kısa ve anlamlı olmalıdır

Değişkene Değer Atama

Değişkene değer atama işlemi 2 şekilde gerçekleşir:

1-SET ifadesi kullanarak değer atama:

SET @değişken_adi=değer

Örnek:

set @telno = 2421234567
select @telno as Telefon

2-SELECT ifadesi kullanarak değer atama:

SELECT @değişken_adı=değer

Örnek:

declare @albumcount int
select @albumcount = COUNT(*) from Album

Örnek:

declare @a int
 declare @t varchar(160)
 select @a= AlbumId, @t = Title from Album
 where ArtistId=1

Değişkenlerin Tip Dönüşümleri

Tip dönüşümü iki şekilde yapılabilir:

1- CAST kullanarak değişken tip dönüşümü yapılır:

CAST (degisken_adi AS veri_tipi(uzunluk))

Örnek:

CAST(@a as varchar(50))

2- CONVERT kullanarak değişken tip dönüşümü yapılır:

CONVERT (veri_tipi, degisken_adi, stil)

Örnek:

CONVERT(varchar(50), @a, 102)

CAST ve CONVERT işlemleri ilgili daha fazla bilgi