SQL Server’da Sorgu Çıktısını HTML Tablosu Şeklinde Oluşturan Prosedür

Herkese merhaba,

Bu yazıda SQL Server’da sorgu çıktısını HTML tablosu şeklinde oluşturan prosedür hakkında bilgi vereceğim.

SQL Server’da bazı durumlarda sorgularınızın sonuçlarını dinamik bir şekilde HTML tablosu olarak görmek isteyebilirsiniz ya da seçili sorguları HTML formatında raporlamak için bir araç olarak kullanabilirsiniz.

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

Ben işlemi Northwind veritabanını kullanarak yaptım. Siz istediğiniz veritabanında deneyebilirsiniz.

--Prosedürün oluşturulması

--Prosedürün oluşturulması

CREATE PROC dbo.sp_SorguyuHTMLTablosunaCevir
(@Sorgu NVARCHAR(3000))
AS
BEGIN
    DECLARE @SutunListesi NVARCHAR(1000) = N'';
    DECLARE @SorguIstegi NVARCHAR(2000) = N'';
    DECLARE @DinamikSorgu NVARCHAR(3000);
    DECLARE @Pozisyon INT;

    SET NOCOUNT ON;

    SELECT @SutunListesi += N'ISNULL (' + name + N',' + N'''' + N' ' + N'''' + N')' + N','
    FROM sys.dm_exec_describe_first_result_set(@Sorgu, NULL, 0);

    SET @SutunListesi = LEFT(@SutunListesi, LEN(@SutunListesi) - 1);
    SET @Pozisyon = CHARINDEX('FROM', @Sorgu, 1);
    SET @SorguIstegi = SUBSTRING(@Sorgu, @Pozisyon, LEN(@Sorgu) - @Pozisyon + 1);
    SET @SutunListesi = REPLACE(@SutunListesi, '),', ') as TD,');
    SET @SutunListesi += N' as TD';
    SET @DinamikSorgu
        = CONCAT(
                    'SELECT (SELECT ',
                    @SutunListesi,
                    ' ',
                    @SorguIstegi,
                    ' FOR XML RAW (''TR''), ELEMENTS, TYPE) AS ''TBODY''',
                    ' FOR XML PATH (''''), ROOT (''TABLE'')'
                );

    EXEC (@DinamikSorgu);
    SET NOCOUNT OFF;
END;
GO

--Prosedürün kullanımı

EXEC dbo.sp_SorguyuHTMLTablosunaCevir 'SELECT ProductName, UnitPrice FROM Products'

Prosedürü oluşturup çalıştırdığınızda aşağıdakine benzer bir sonuç elde edeceksiniz.

SQL Server'da Sorgu Çıktısını HTML Tablosu Şeklinde Oluşturan Prosedür

Görüldüğü üzere tablomuz oluşturuldu. Sonuca tıklayıp içine bakalım.

SQL Server'da Sorgu Çıktısını HTML Tablosu Şeklinde Oluşturan Prosedür

Görüldüğü üzere HTML tablo oluşturulmuş oldu.

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

387 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!