SQL Server’da Bir Tablonun Veritabanında Olup Olmadığını Kontrol Etmek
Herkese merhaba,
Bu yazıda sizlere bir tablonun veritabanında olup olmadığının kontrolünün nasıl yapılacağından bahsedeceğim.
SQL Server’da bazı durumlarda ki örnek verecek olursak kayıt ekleme işlemi esnasında tablo var mı yok mu diye kontrol ederek bir kontrol işlemi sağlanabilir ya da bir prosedür içerisinde de bu şekilde bir kontrol mekanizmasına ihtiyaç duyulabiliriz.
Aşağıda vermiş olduğum 5 sorgu yardımıyla bu işlemi gerçekleştirebilirsiniz. Bu sorgular kontrol işlemi yapmaktadır sadece yazım şekli farklıdır.
----1-) Sorgu
IF OBJECT_ID(N'Categories', N'U') IS NOT NULL
BEGIN
PRINT 'Tablo Mevcut';
END;
ELSE
BEGIN
PRINT 'Tablo Bulunamadı';
END;
----2-) Sorgu
IF EXISTS
(
SELECT *
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = N'Categories'
)
BEGIN
PRINT 'Tablo Mevcut';
END;
ELSE
BEGIN
PRINT 'Tablo Bulunamadı';
END;
----3-) Sorgu
IF EXISTS
(
SELECT 1
FROM sys.objects
WHERE object_id = OBJECT_ID(N'Categories')
AND type = N'U'
)
BEGIN
PRINT 'Tablo Mevcut';
END;
ELSE
BEGIN
PRINT 'Tablo Bulunamadı';
END;
----4) Sorgu
IF EXISTS
(
SELECT 1
FROM sys.tables
WHERE name = N'Categories'
AND type = N'U'
)
BEGIN
PRINT 'Tablo Mevcut';
END;
ELSE
BEGIN
PRINT 'Tablo Bulunamadı';
END;
----5-) Sorgu
IF EXISTS
(
SELECT name
FROM sys.sysobjects
WHERE name = N'Categories'
AND xtype = N'U'
)
BEGIN
PRINT 'Tablo Mevcut';
END;
ELSE
BEGIN
PRINT 'Tablo Bulunamadı';
END;
Ben Northwind veritabanında Categories tablosu var mı yok mu diye kontrol ettirdim. Herhangi bir tanesini çalıştırdığımız zaman aşağıdaki sonucu göreceksiniz.
Görüldüğü üzere kontrol işlemi sağlanmış oldu.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.