से एक कॉलम मान कैसे परिवर्तित करें varbinary(max) को varcharमानव-पठनीय रूप जाए ?
से एक कॉलम मान कैसे परिवर्तित करें varbinary(max) को varcharमानव-पठनीय रूप जाए ?
जवाबों:
"एक varbinaryकरने के लिए परिवर्तितvarchar " अलग बातें हो सकता है।
Varbinary एसक्यूएल सर्वर में एक स्ट्रिंग की बाइनरी प्रतिनिधित्व है (उदाहरण के लिए कास्ट कर लौटे varbinaryप्रत्यक्ष या से DecryptByPassPhraseया DECOMPRESSकार्यों) तुम सिर्फ कर सकते हैं CASTयह
declare @b varbinary(max)
set @b = 0x5468697320697320612074657374
select cast(@b as varchar(max)) /*Returns "This is a test"*/
यह CONVERTशैली पैरामीटर के साथ उपयोग करने के बराबर है 0।
CONVERT(varchar(max), @b, 0)
अन्य शैली के पैरामीटर CONVERTविभिन्न आवश्यकताओं के लिए उपलब्ध हैं जैसा कि अन्य उत्तरों में नोट किया गया है।
SELECT CAST('This is a test' AS VARBINARY(100))जो है 0x5468697320697320612074657374मेरा डिफ़ॉल्ट मिलान और धर्मान्तरित इसे करने के लिए वापस में varcharस्ट्रिंग। गुंजन का जवाब एक स्ट्रिंग के रूप में हेक्स प्रतिनिधित्व को वापस लौटाता है ('5468697320697320612074657374') संभवतः यह व्याख्या ओपी की आवश्यकता के लिए सही है क्योंकि उन्होंने इसे स्वीकार किया था।
CONVERTआपके इच्छित तरीके का चयन करने के लिए एक शैली पैरामीटर है (मेरी व्याख्या डिफ़ॉल्ट शैली है) इसलिए यह उत्तर नहीं हो सकता है कि आपको इस समय अपने उपयोग के मामले की आवश्यकता है लेकिन यह अन्य उपयोग के मामलों के लिए सही है। जिसमें मूल प्रश्नकर्ता शामिल है जो "मानव पठनीय रूप" निर्दिष्ट करता है, हेक्स नहीं।
वास्तव में सबसे अच्छा जवाब है
SELECT CONVERT(VARCHAR(1000), varbinary_value, 1);
के प्रारंभ में " 2" कट ऑफ " " का उपयोग 0xकरना varbinary।
इसे इस्तेमाल करे
SELECT CONVERT(varchar(5000), yourvarbincolumn, 0)
एक VARBINARY(MAX)कॉलम के लिए, मुझे उपयोग करना था NVARCHAR(MAX):
cast(Content as nvarchar(max))
या
CONVERT(NVARCHAR(MAX), Content, 0)
VARCHAR(MAX) didn't show the entire value
नीचे जाने के बाद मैं भी मूल पोस्ट [यहाँ] [१] संघर्ष कर रहा था
bcp "SELECT CAST(BINARYCOL AS VARCHAR(MAX)) FROM OLTP_TABLE WHERE ID=123123 AND COMPANYID=123"
queryout "C:\Users\USER\Documents\ps_scripts\res.txt" -c -S myserver.db.com -U admin -P password
[1]: https://stackoverflow.com/questions/60525910/powershell-truncating-sql-query-output?noredirect=1#comment107077512_60525910