SQL Geçici Tablo Oluşturma – SQL Sorguları 6

SQL sorguları yazı serimin 6. yazısında biraz daha ileri tarihli bir yazıyı barındıracağım. Aslında bu yazının numarası 10’dan büyük olması gerekiyor. Benim 6. yazıda joinlere geçmiş olmam gerekiyor ancak bu SQL geçici tablo oluşturma konusunu ben de şu anda gördüğüm için bilgilerim tazeyken sizinle paylaşmak istedim.

SQL Geçici Tablo Oluşturma 2 Farklı Geçiciliği Barındırıyor

SQL veritabanı sisteminde büyük raporlar oluştururken yani büyük datalarda birden fazla iç içe geçmiş verilerde bir koşullu sorgu oluştururken geçici tablo oluşturmak yazılım geliştiricisine büyük kolaylık sağlar. Geçici tablolar çalışma anında oluşturulur ve normal bir tabloda yapabileceğiniz her türlü işlemi yapabilirsiniz.

Local geçici tablolar sadece tabloyu oluşturan kullanıcı tarafından kullanılabilmektedir. Tabloyu oluşturan kullanıcı bağlantıyı kapattığı anda geçici oluşan tablo silinmektedir. Geçici tablo oluşturma işlemi şu şekilde yapılmaktadır:

CREATE TABLE #LocalGeciciTablo
(
	ID int,
	Ad nvarchar(20), 
	Soyad nvarchar(20)
)

insert into #LocalGeciciTablo values (
	1,
	'Ege',
	'Şenkul'
)

Yukarıdaki kod bloğunda LocalGeciciTablo adında local geçici tipte bir SQL tablosu oluşturdum. Local geçici tipte bir tablo oluşturmak için tablo oluşturur gibi kod bloğunu yazıyoruz ancak tablo adının önüne # işareti koyuyoruz. Tabloyu oluşturduktan sonra tablonun içerisine 1 adet kayıt ekledim.

Yukarıdaki tabloya farklı bir sorgu editörü üzerinden erişmeye çalışırsanız hata alırsınız. Bunun nedeni tabloyu oluşturan kullanıcının açtığı bağlantıda tablonun kalmasıdır. Bunun önüne geçebilmek için Global Geçici Tablo oluşturabilirsiniz. Global geçici tablolar bağlantı açık olduğu sürece tüm kullanıcılar ve tüm bağlantılarda kullanılabilir.

CREATE TABLE ##LocalGeciciTablo2
(
	ID int,
	Ad nvarchar(20), 
	Soyad nvarchar(20)
)

insert into ##LocalGeciciTablo2 values (
	1,
	'Ege',
	'Şenkul'
)

Global geçici tablo oluşturmak için ilk yaptığımız işlem ile ilgili birebir aynı şeyleri yapıyor tek fark 2 adet # işareti koyuyoruz.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir