SQL Server ‘da İstediğimiz Data Type ‘lar Hangi Objelerde Yer Almaktadır

Merhaba Arkadaşlar,

Bu gün ki makalemde sizlere  Database ‘imizin içerisinde yer alan objelerde istediğimiz Data Type lara ait kolonları ve bu kolonların hangi objelerde yer aldığını nasıl buluruz bunu göstereceğim.

İlk önce İşlem yapacağımız veritabanını aşağıda ki script ile oluşturuyoruz.

CREATE DATABASE SQLTURKIYE_Search;
GO

Daha sonra bir adet test tablosu oluşuturuyoruz.

USE SQLTURKIYE_Search;
GO
CREATE TABLE Personel_Desc
    (
      [Id] INT IDENTITY(1, 1)
               PRIMARY KEY CLUSTERED ,
      [NAME] VARCHAR(75) ,
      [SURNAME] VARCHAR(100) ,
      [E-Mail] VARCHAR(50) ,
      [CV] TEXT ,
      [DESCRIPTION] NTEXT
    )
ON  [PRIMARY];

 

Bu işlemlerden sonra biz veritabanımız içerisinde yer alan kolonların data type ‘ı TEXT olanlar hangi objelerde diye bir sonuç elde etmek istiyorsak. Bunu aşağıda ki script ile gerçekleştirebiliyoruz.

SELECT  OBJECT_NAME(c.object_id) TableName ,
        c.name ColumnName
FROM    sys.columns AS c
        JOIN sys.types AS t ON c.user_type_id = t.user_type_id
WHERE   t.name = 'text'
ORDER BY c.object_id;
GO

Bu scriptin sonucu aşağıda ki gibidir.

1

Yukarıda ki ekran görüntüsünde de gördüğünüz üzere Personel_Desc tablosunda yer alan CV kolonunun Data Type ‘ı TEXT alandır.

Eğer VARCHAR yada NTEXT içeren kolonları bulmak isteseydim ;

SELECT  OBJECT_NAME(c.object_id) TableName ,
        c.name ColumnName
FROM    sys.columns AS c
        JOIN sys.types AS t ON c.user_type_id = t.user_type_id
WHERE   t.name IN ( 'ntext', 'varchar' )
ORDER BY c.object_id;
GO

 

Aşağıda ki sonuca baktığımızda Personel_Desc tablosunda VARCHAR ve NTEXT data type ‘I na sahip kolonlar aşağıda listelenmiştir.

2

Bu şekilde yüzlerce tablo, view vb. obje içeren database ‘lerde istediğimiz data type ‘ı hangi objede ve kolonda yer almakta rahatça bulabilriz.

İyi Çalışmalar …

Leave a Reply

Your email address will not be published. Required fields are marked *