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

किसी विशिष्ट मान के साथ एक varbinary फ़ील्ड को कैसे अपडेट करें?

इसे आजमाएं:

UPDATE dbo.Login
SET
  Salt=CAST('bPftidzyAQik' AS VARBINARY),
  Password=0x2B89C2954E18E15759545A421D243E251784FA009E46F7A163926247FDB945F85F095DBB1FFF5B2B43A6ADAE27B8C46E176902412C4F8943E39528FF94E0DD5B
WHERE LoginID=10947

(आपको एक हेक्स मान को varbinary में संग्रहीत करने के लिए एक स्ट्रिंग डालने की आवश्यकता नहीं है - यह वही है जो डिफ़ॉल्ट रूप से उद्धरणों के बिना है)

सवाल यह है कि, आप उस पासवर्ड हेक्स मान को कैसे उत्पन्न कर रहे हैं, और क्या आप इसे पढ़ने के लिए उसी एन्कोडिंग का उपयोग कर रहे हैं? यदि आप उस डेटा को वापस एक स्ट्रिंग में बदलने की योजना बना रहे हैं, तो आपको ऐसा करने के लिए कुछ कोड की आवश्यकता होगी। यहाँ एक फ़ंक्शन है जो मैंने लिखा है जो यह करता है:

CREATE FUNCTION ConvertBinary
(  
    @value AS varbinary(max)
) RETURNS VARCHAR(MAX) AS BEGIN  

    DECLARE @result AS varbinary(max),
            @result2 AS varchar(max),
            @idx AS bigint;

    IF @value IS null
        return null;

    SELECT @result = @value;  
    SELECT @result2 = '';
    SELECT @idx = 1;

    WHILE substring(@result, @idx, 1) != 0 AND @idx < len(@result)
        BEGIN
            SET @result2 = @result2 + cast(substring(@result,@idx,1) as char(1));  
            SET @idx = @idx + 1;
        END

    RETURN @result2;  

END 

मुझे नहीं पता कि यह आपके लिए कितना उपयोगी होगा, हालांकि, यह बहुत संभव है कि जो भी ऐप इन क्षेत्रों का उपयोग कर रहा है वह इस फ़ंक्शन की अपेक्षा से अलग मूल्यों को संभाल रहा है। रिकॉर्ड के लिए, यह फ़ंक्शन एक varbinary मान लेता है जो मूल रूप से utf-8 स्ट्रिंग था, और उस स्ट्रिंग का varchar मान देता है। शुभकामनाएँ!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL सर्वर 2008 में पेजिनेशन कैसे करें?

  2. SQL सर्वर ट्रिगर - भाग 2 DDL और लॉगऑन ट्रिगर

  3. जहां एक विशिष्ट महीने में सभी रिकॉर्ड खोजने के लिए क्लॉज

  4. एसक्यूएल में कॉलम और पंक्तियों को स्थानांतरित करने का आसान तरीका?

  5. SQL सर्वर प्रबंधन स्टूडियो का उपयोग करने के तरीके के बारे में जानें