Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

एसक्यूएल स्ट्रिंग डेटा को हेक्साडेसिमल प्रारूप में स्ट्रिंग टेक्स्ट में परिवर्तित करता है

एमएस-एसक्यूएल 2008 के लिए निम्नलिखित संग्रहित प्रो एक हेक्स स्ट्रिंग को वर्चर (अधिकतम) में परिवर्तित कर देगा:

if exists (select * from dbo.sysobjects where name = 'f_hextostr' and xtype = 'FN')
drop function [dbo].[f_hextostr]
GO

CREATE FUNCTION [dbo].[f_hextostr] (@hexstring VARCHAR(max))
RETURNS VARCHAR(max)

AS

begin
 declare @char1 char(1), @char2 char(1), @strlen int, @currpos int, @result varchar(max)
 set @strlen=len(@hexstring)
 set @currpos=1
 set @result=''
 while @currpos<@strlen
  begin
   set @char1=substring(@hexstring,@currpos,1)
   set @char2=substring(@hexstring,@currpos+1,1)
   if (@char1 between '0' and '9' or @char1 between 'A' and 'F')
    and (@char2 between '0' and '9' or @char2 between 'A' and 'F')
    set @[email protected]+
     char((ascii(@char1)-case when @char1 between '0' and '9' then 48 else 55 end)*16+
     ascii(@char2)-case when @char2 between '0' and '9' then 48 else 55 end)
   set @currpos = @currpos+2
  end
 return @result
end
GO

उपयोग करने के लिए बस कुछ ऐसा करें:

select dbo.f_hextostr('0x3031323')

या

select dbo.f_hextostr(X) from MyTable


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. दो गिनती प्राप्त करना और फिर उन्हें विभाजित करना

  2. प्राथमिक कुंजी मर्ज विरोध को स्वचालित रूप से हल करें

  3. com.microsoft.sqlserver.jdbc.SQLServerException:भिन्न डेटा प्रकार समर्थित नहीं है

  4. SQL सर्वर में लॉक की गई तालिका खोजें

  5. फ़ाइल की जाँच करें sql सर्वर में मौजूद है या नहीं?