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

MS SQL सर्वर - HEX स्ट्रिंग को पूर्णांक में बदलें

कुछ और स्पष्ट उदाहरण देने के लिए धन्यवाद। जहां तक ​​​​मैं प्रलेखन और गुगलिंग से बता सकता हूं, एमएसएसक्यूएल 2005 में यूडीएफ या अन्य प्रक्रियात्मक कोड के बिना यह संभव नहीं है। MSSQL 2008 में CONVERT() फ़ंक्शन की शैली पैरामीटर अब बाइनरी डेटा का समर्थन करता है, इसलिए आप इसे सीधे इस तरह कर सकते हैं:

select convert(int, convert(varbinary, '0x89', 1))

पिछले संस्करणों में, आपकी पसंद हैं:

  • यूडीएफ का उपयोग करें (टीएसक्यूएल या सीएलआर; सीएलआर वास्तव में इसके लिए आसान हो सकता है)
  • चयन को एक संग्रहित प्रक्रिया में लपेटें (लेकिन आपके पास अभी भी यूडीएफ के बराबर होगा)
  • इसे एप्लिकेशन फ्रंट एंड में कनवर्ट करें
  • MSSQL 2008 में अपग्रेड करें

यदि डेटा को परिवर्तित करना केवल प्रदर्शन उद्देश्यों के लिए है, तो एप्लिकेशन सबसे आसान समाधान हो सकता है:डेटा स्वरूपण आमतौर पर वैसे भी होता है। यदि आपको इसे एक प्रश्न में करना है, तो एक यूडीएफ सबसे आसान है लेकिन प्रदर्शन बहुत अच्छा नहीं हो सकता है (मुझे पता है कि आपने कहा था कि आपने यूडीएफ का उपयोग नहीं करना पसंद किया लेकिन यह स्पष्ट नहीं है कि क्यों)। मेरा अनुमान है कि इसके लिए MSSQL 2008 में अपग्रेड करना शायद यथार्थवादी नहीं है।

अंत में, FYI करें आपके द्वारा शामिल की गई संस्करण संख्या प्रबंधन स्टूडियो का संस्करण है, न कि आपके सर्वर की संस्करण संख्या। इसे प्राप्त करने के लिए, सर्वर से ही पूछें select @@version या select serverproperty('ProductVersion')




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. java.lang.ClassNotFoundException:com.microsoft.jdbc.sqlserver.SQLServerDriver:क्या मैं सही ड्राइवर लोड कर रहा हूँ?

  2. SQL सर्वर समवर्ती लेनदेन समस्या

  3. एसक्यूएल सर्वर गणना कॉलम का उपयोग करें

  4. समूह द्वारा खंड के साथ SQL अल्पविराम से अलग पंक्ति

  5. समूह-वार अधिकतम कॉलम वाली पंक्तियों का चयन करें