SQL Server’da WordWrap Fonksiyonu Yazmak

Herkese merhaba,

Bu yazıda SQL Server’da WordWrap fonksiyonu yazmak ile ilgili bilgi vermeye çalışacağım.

SQL Server’da bazı durumlarda WordWrap gibi fonksiyona ihtiyacınız olabilir. WordWrap bir metni belli bir uzunlukta keser kalanı yeni bir satırda gösterir. Süreç bu şekilde ilerler.

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

CREATE FUNCTION [dbo].[WrapText]
(
    @Metin NVARCHAR(MAX),
    @Uzunluk INT
)
RETURNS NVARCHAR(MAX)
AS
BEGIN
    DECLARE @Sonuc AS NVARCHAR(MAX);
    SELECT @Sonuc = CASE
                        WHEN @Sonuc IS NULL THEN
                            SUBSTRING(@Metin, numara.Numara - @Uzunluk + 1, @Uzunluk)
                        ELSE
                            @Sonuc + CHAR(13) + CHAR(10) + SUBSTRING(@Metin, numara.Numara - @Uzunluk + 1, @Uzunluk)
                    END
    FROM
    (
        SELECT Numara = ROW_NUMBER() OVER (ORDER BY name)
        FROM sys.all_objects
    ) numara
    WHERE numara.Numara <= LEN(@Metin) + @Uzunluk - 1
          AND numara.Numara % @Uzunluk = 0;
    RETURN @Sonuc;
END;

--Kullanımı 

PRINT dbo.WrapText('abcdefghijklmnopqrstuvwxyz',5)

Yukarıdaki fonksiyonu oluşturup kodu çalıştırınca aşağıdakine benzer bir sonuç göreceksiniz.

SQL Server'da WordWrap Fonksiyonu Yazmak

Görüldüğü üzere girilen metin belli bir uzunlukta kesilmiş ve alt satıra geçmiş oldu.

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

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