SQL Server’da Tablodaki Kolon Adlarını Virgüllü Olarak Listelemek

Herkese merhaba,

Bu yazıda SQL Server’da tablodaki kolon adlarını virgüllü olarak listelemek hakkında bilgi vereceğim.

SQL Server’da bazı durumlarda tablodaki kolon adlarını virgüllü olarak listelemek isteyebilirsiniz.

Aşağıdaki kodu kullanarak siz de bu işlemi rahatlıkla yapabilirsiniz.

DECLARE @Tablo_Adi VARCHAR(128);
DECLARE @Sema_Adi VARCHAR(128);

SET @Tablo_Adi = 'Products';
SET @Sema_Adi = 'dbo';

DECLARE @vvc_ColumnName VARCHAR(128);
DECLARE @Kolon_Adlari VARCHAR(MAX);

IF @Sema_Adi = ''
BEGIN
    PRINT 'Hata : Tanımlanmış şema yok!';
    RETURN;
END;

IF NOT EXISTS
(
    SELECT *
    FROM sys.tables T
        JOIN sys.schemas S
            ON T.schema_id = S.schema_id
    WHERE T.name = @Tablo_Adi
          AND S.name = @Sema_Adi
)
BEGIN
    PRINT 'Hata : ''' + @Tablo_Adi + ''' tablosu şema içinde ''' + @Sema_Adi + ''' bulunamadı!';
    RETURN;
END;

DECLARE TableCursor CURSOR FAST_FORWARD FOR
SELECT CASE
           WHEN PATINDEX('% %', C.name) > 0 THEN
               '[' + C.name + ']'
           ELSE
               C.name
       END
FROM sys.columns C
    JOIN sys.tables T
        ON C.object_id = T.object_id
    JOIN sys.schemas S
        ON S.schema_id = T.schema_id
WHERE T.name = @Tablo_Adi
      AND S.name = @Sema_Adi
ORDER BY column_id;


SET @Kolon_Adlari = '';

OPEN TableCursor;
FETCH NEXT FROM TableCursor
INTO @vvc_ColumnName;

WHILE @@FETCH_STATUS = 0
BEGIN
    SET @Kolon_Adlari = @Kolon_Adlari + @vvc_ColumnName;

    FETCH NEXT FROM TableCursor
    INTO @vvc_ColumnName;

    IF @@FETCH_STATUS = 0
        SET @Kolon_Adlari = @Kolon_Adlari + ',';
END;

CLOSE TableCursor;
DEALLOCATE TableCursor;

PRINT 'Kolon adları :';
PRINT '--------------';
PRINT @Kolon_Adlari;

Yukarıdaki kodu çalıştırdığınızda aşağıdaki sonucu göreceksiniz.

SQL Server'da Tablodaki Kolon Adlarını Virgüllü Olarak Listelemek

Görüldüğü üzere SQL Server’da tablodaki kolon adlarını virgüllü olarak listelemiş olduk.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

179 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!