Herkese merhaba,
Bu başlık altında SQL Server’da Temporary Table ve Table Variable arasındaki farkları inceleyeceğiz.
- Temporary Table’da # işareti ile tablo oluştururken Table Variable’da @ işareti ile oluşturulur.
- Temporary Table oluşturulduktan sonra DDL işlemleri yapabiliriz. Yeni bir kolon ekleme imkanımız olur. Table Variable ise ALTER,CREATE,DROP gibi DDL komutlarını desteklemez.
- Temporary Table’lar TempDB’ de tutulmaktadır. Table Variable ise In – Memory olarak saklanmaktadır.
- Temporary Table Transaction yapısını desteklemektedir. Table Variable ise Transaction yapısını desteklemez.
- Temporary Table’larda kullanıcı tanımlı fonksiyonlara (UDF) izin verilmezken Table Variable’larda kullanıcı tanımlı fonksiyonları (UDF) kullanmaya izin verilir.
- Temporary Table’ler index’leri destekler ayrıca Primary Key ve Unique Key ile oluşturulan index’ler de desteklenir. Table Variable’larda ise index’ler desteklenmez.
- Temporary Table’lar tanımlandıkları ortamda erişilebilir. Eğer Global olarak tüm ortamlardan erişime açık olması istenirse Temporary Table oluşturulurken ‘#’ yerine ‘##’ kullanılmalıdır. Oluşturulma türüne göre hem yerel hemde global erişime destek verir. Table Variable’lar ise tanımlanan ortamdan erişilebilir. Global erişim türü mevcut değildir.
- Table Variable türündeki tablolar, Temporary Table türündeki tablolara göre çok daha hızlı çalışırlar.
- Temporary Table; nested stored procure’lerde kullanılabilirken, Table Variable; nested stored procedure’lerde kullanılamaz.
- SELECT INTO ile Temporary Table oluşturabilirken, SELECT INTO ile Table Variable oluşturamazsınız.
- Stored Procedure’de içinde Temporary Table varsa stored procedure her seferinde recompile olurken Table Variable varsa recompile işlemi gerçekleşmez.
- Temporary Table büyük tablolarda Table Variable’a göre daha performanslı çalışır.
- Eğer satır sayısı 100’ün altındaysa genellikle Table Variable kullanılır. Satır sayısı 100 ün üzerindeyse Temporary Table kullanılması daha iyidir.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.
