2012-07-07 10 views
15

या यदि यह नहीं है, तो वास्तव में एक एसक्यूएल सर्वर collation क्या है? शायद collation (एक अवधारणा के रूप में) की मेरी समझ गलत है।क्या 'यूनिकोड collation' जैसी कोई चीज है?

मैं ग्रीक या रिश्तेदार या यहां तक ​​कि पश्चिमी-यूरोपीय के लिए अपना संयोजन निर्दिष्ट नहीं करना चाहता हूं। मैं यूनिकोड में समर्थित किसी भी भाषा का उपयोग करने में सक्षम होना चाहता हूं।

अद्यतन (मैं MSSQL 2005 का उपयोग कर रहा हूँ): वहाँ एक सामान्य, संस्कृति स्वतंत्र मिलान है कि किसी भी संस्कृति के ग्रंथों के लिए इस्तेमाल किया जा सकता है: ठीक है, मैं सवाल अलग ढंग से व्यक्त कर रहा हूँ? मुझे पता है कि इसमें हंगरी में 'टाई' या जर्मन में ß = ss जैसे संस्कृति-विशिष्ट नियम नहीं होंगे, लेकिन लगातार, अधिक स्वीकार्य परिणाम प्रदान करेंगे।

क्या कोई ऐसी टक्कर है जो संस्कृति-विशिष्ट नहीं है?

+1

तब 'वर्कर' के बजाय 'nvarchar' आदि का उपयोग करें। तुलनात्मकता (और इसलिए सॉर्टिंग) नियमों को निर्धारित करने में अभी भी एक भूमिका है, लेकिन इस मामले में संग्रहीत वर्णों की सीमा को प्रभावित नहीं करता है। –

+0

http://dba.stackexchange.com/a/31861/19091 SQL सर्वर के संदर्भ में एक संयोजन क्या करता है/करता है इसका एक बड़ा स्पष्टीकरण देता है। – Stijn

उत्तर

9

ठीक है, हमेशा लैटिन 1_General_BIN2 जैसे बाइनरी संयोजन होते हैं। यह कोड अंक को संख्यात्मक क्रम में संग्रहीत करता है, जो बहुत मनमाना हो सकता है। हालांकि यह संस्कृति-विशिष्ट नहीं है (नाम के बावजूद)।

ऐसा लगता है कि कई भाषाओं/संस्कृतियों से डेटा को सॉर्ट करने का कोई बुद्धिमान तरीका नहीं है, इसलिए आधा बेक्ड समाधान की बजाय, आप जो भी कर सकते हैं वह द्विआधारी मूल्यों से क्रमबद्ध है।

4

यह जानने के लिए एक अच्छा लेख है कि संयोजन, छोटा और मीठा क्या है: SQL Server and Collation

संयोजन कुछ ऐसा है जो आपको डेटा की तुलना और सॉर्ट करने की अनुमति देगा। जहां तक ​​मुझे याद है कि यूनिकोड संयोजन की तरह कुछ भी नहीं है।

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