2012-12-14 19 views
5

में सुपरस्क्रिप्ट नंबर डालने के लिए varchar डेटा फ़ील्ड को अंत में 4 (4 की शक्ति) के सुपरस्क्रिप्ट संख्या के साथ एक मूल्य डालने का प्रयास कर रहा है।एमएस एसक्यूएल

मैं सुपरस्क्रिप्ट 2 और 3 (यानी वर्ग और cubed) का उपयोग करके मूल्यों को सम्मिलित/अद्यतन करने में सक्षम हूं, लेकिन मुझे varchar फ़ील्ड में सही ढंग से दर्ज करने के लिए 4 की शक्ति नहीं मिल सकती है?

यह काम करता है अगर मैं nvarchar पर फ़ील्ड स्विच करता हूं, लेकिन मैं इससे बचने की कोशिश कर रहा हूं।

इस वर्ग के लिए या 2

update mytable 
set myfield = 'test'+NCHAR(0xb2) 

हालांकि की शक्ति के लिए काम करता है, यह एक 4 अंत में का उपयोग कर काम करने के लिए प्राप्त करने की कोशिश ...

update mytable 
set myfield = 'test'+NCHAR(0x2074) 

यह सिर्फ यह एक अद्यतन करता है संख्यात्मक 4 और सुपरस्क्रिप्ट नहीं 4. क्या ऐसा इसलिए है क्योंकि VarChar डेटाटाइप स्क्वायर और क्यूबड पहचानता है, लेकिन कोई अन्य नहीं?

उत्तर

3

3 से अधिक सुपरस्क्रिप्ट केवल यूनिकोड वर्णों के रूप में उपलब्ध हैं, इसलिए आपको दुर्भाग्यवश, आपके डेटा फ़ील्ड के लिए VARCHAR के बजाय NVARCHAR का उपयोग करने की आवश्यकता है।

कृपया NVARCHAR का उपयोग किए बिना स्वीकार्य पात्रों के लिए ASCII table देखते हैं - आप केवल 2 के लिए सुपरस्क्रिप्ट देखेंगे और 3

संबंधित मुद्दे