خوش آموز درخت تو گر بار دانش بگیرد، به زیر آوری چرخ نیلوفری را
استفاده از تابع DATALENGTH در SQL Server
از تابع DATALENGTH در SQL Server برای بازگرداندن تعداد بایت های مورد استفاده در یک رشته استفاده می شود. در ادامه مثال های مختلفی از DATALENGTH را خواهید دید که با طرز کار و نحوه استفاده آن آشنا خواهید شد.
Syntax استفاده از تابع DATALENGTH بصورت زیر می باشد.
لطفا به مثال زیر توجه کنید که چگونه تابع Datalength، تعداد بایت هایی که در متغیر Stringtxt مقداردهی شده را در Result set برمی گرداند.
همانطور که مشاهده می کنید، رشته microsoft sql server از نوع Varchar می باشد و که از یک بایت برای هر کاراکتر استفاده می کند. بنابراین تابع DataLength طول رشته را که 20 * 1 = 20 بایت است ، برمی گرداند.
مثال زیر هم مشابه مثال فوق است، فقط پس از مقدار متغیر Stringtxt سه کاراکتر space هم اضافه شده است.
همانطور که مشاهده می کنید، تابع Datalength طول رشته را 23 بر میگرداند و این هم به دلیل سه کاراکتر Space یا فاصله ای است که در انتهای متن مشاهده می کنید. در نظر داشته باشید که بین تابع LEN و Datalength تفاوت وجود دارد و این دو یکی نیستند. تابع len شامل فضای space نمی شود و در حالیکه تابع datalength فضای space را هم محاسبه می کند.
خب، اجازه دهید مثالی دیگری از تابع Datalength با دیتاتایپ nvarchar را بررسی کنیم.
همانطور که مطلع هستید، در دیتاتایپ Nvarchar، هر کاراکتر معادل دو بایت خواهد بود و بنابراین تابع DATALENGTH طول رشته را 20 * 2 = 40 بایت برمی گرداند.
DATALENGTH (string)
لطفا به مثال زیر توجه کنید که چگونه تابع Datalength، تعداد بایت هایی که در متغیر Stringtxt مقداردهی شده را در Result set برمی گرداند.
DECLARE @Stringtxt VARCHAR(50)
SET @Stringtxt = 'microsoft sql server'
SELECT @Stringtxt AS stringtxt ,DATALENGTH (@Stringtxt) AS 'DataLength'
همانطور که مشاهده می کنید، رشته microsoft sql server از نوع Varchar می باشد و که از یک بایت برای هر کاراکتر استفاده می کند. بنابراین تابع DataLength طول رشته را که 20 * 1 = 20 بایت است ، برمی گرداند.
مثال زیر هم مشابه مثال فوق است، فقط پس از مقدار متغیر Stringtxt سه کاراکتر space هم اضافه شده است.
DECLARE @Stringtxt VARCHAR(50)
SET @Stringtxt = 'microsoft sql server '
SELECT @Stringtxt AS stringtxt ,DATALENGTH (@Stringtxt) AS 'DataLength'
همانطور که مشاهده می کنید، تابع Datalength طول رشته را 23 بر میگرداند و این هم به دلیل سه کاراکتر Space یا فاصله ای است که در انتهای متن مشاهده می کنید. در نظر داشته باشید که بین تابع LEN و Datalength تفاوت وجود دارد و این دو یکی نیستند. تابع len شامل فضای space نمی شود و در حالیکه تابع datalength فضای space را هم محاسبه می کند.
خب، اجازه دهید مثالی دیگری از تابع Datalength با دیتاتایپ nvarchar را بررسی کنیم.
DECLARE @Stringtxt NVARCHAR(50)
SET @Stringtxt = 'microsoft sql server '
SELECT @Stringtxt AS stringtxt ,DATALENGTH (@Stringtxt) AS 'DataLength'
همانطور که مطلع هستید، در دیتاتایپ Nvarchar، هر کاراکتر معادل دو بایت خواهد بود و بنابراین تابع DATALENGTH طول رشته را 20 * 2 = 40 بایت برمی گرداند.
نمایش دیدگاه ها (0 دیدگاه)
دیدگاه خود را ثبت کنید: