SQL Üzerinde Table, Column, SP, Function gibi Nesneler Nasıl Denetlenir?

Merhabalar, her yazılım dilinde olduğu gibi SQL’de de denetlemeler (if-else yapıları) vardır.

Bu makalemde SQL denetlemeleri için sürekli olarak kullandığım hazır metodlarımı paylaşmak istiyorum.

İçerisinde database, tablo, view, column, stored procedure, function ve indexler var mı yok mu sorguları bulunmaktadır. Metodlar C# ile yazılmıştır.

Bütün metodlar geriye string olarak true veya false döndermektedir.

Database Var mı Metodu

public string CheckIfDbExists(string dbName)
{
return (String.Format(@"IF EXISTS(SELECT * FROM master.dbo.sysdatabases where name ='{0}') select 'true' else SELECT 'false'", dbName));
}

Tablo Var mı Metodu

public string CheckIfTableExists(string tableName)
{
return (String.Format("IF OBJECT_ID('{0}', 'U') IS NOT NULL SELECT 'true' ELSE SELECT 'false'", tableName));
}

View Var mı Metodu

public string CheckIfViewExists(string tableName)
{
return (String.Format("IF OBJECT_ID('{0}', 'V') IS NOT NULL SELECT 'true' ELSE SELECT 'false'", tableName));
}

Column Var mı Metodu

public string CheckColumnExist(string columnName, string tableName)
{
return (String.Format(@"IF EXISTS(select * from sys.columns where Name ='{0}' and Object_ID = Object_ID('{1}'))
select 'true' else SELECT 'false'", columnName, tableName));
}

Stored Procedure Var mı Metodu

public string CheckIfSPExist(string spName)
{
return (String.Format(@"IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = '{0}')
SELECT 'true' ELSE SELECT 'false'", spName));
}

Function Var mı Metodu

public string CheckIfFunctionExist(string functionName)
{
return (String.Format(@"IF EXISTS (SELECT * FROM sys.objects WHERE type = 'FN' AND name = '{0}') SELECT 'true' ELSE SELECT 'false'", functionName));
}

Index Var mı Metodu

public string CheckIndexExists(string pTableName, string pIndexName)
{
return (String.Format(@"IF EXISTS(SELECT name FROM sys.indexes WHERE object_id = OBJECT_ID('{0}') AND name ='{1}') select 'true' else SELECT 'false'", pTableName, pIndexName));
}

4,219 total views, 0 views today

2 Comments

hasan

about 4 sene ago

Ellerine sağlık çok salasın.... ufak bir not:yorum kısmında yorum yazmak için focuslandığında chorome tarayıcıda alanları boşaltmıyor. Eğer kod sana aitse geri bildirim yaparak sana bir faidem dokunsun. Kolay gelsin. Tekrar Teşekkürler paylaşım için

Cevapla

qaniqani

about 4 sene ago

Eyv. işini gördüyse ne mutlu bana :) Tasarimda bana ait değil bu tür siteler için herkes gibi benimde tercihim WP'den yana oldu. Oradaki hata da sanırım JS çalışmıyordur bakmak lazım.

Cevapla

Leave a Comment

Ulaşım için: Facebook: /ganigani Twitter: @abdulgani_demir


*

%d blogcu bunu beğendi: