কোনও ডিবিএমএস-এর কি কোনও কোলেশন রয়েছে যা কেস-সংবেদনশীল এবং অ্যাকসেন্ট-সংবেদনশীল উভয়ই?


18

নোট করুন এই প্রশ্নটি বিক্রেতা / সংস্করণ অগ্নোস্টিক

আমার কাছে মনে হয়, ইংরেজির একজন স্পিকার (টাইপিস্ট, লেখক) হিসাবে, শব্দগুলি যথাযথভাবে কেস হবে আশা করা যুক্তিযুক্ত তবে সঠিকভাবে উচ্চারণগুলি সঠিক পথে চলছে না:

আমি যখন চ্যাম্পস-এলিসিস রেস্তোরাঁয় ক্লোর মাইট্রে ডি'হোটেলের সাথে টাইট-এ-টেটে বিভ্রান্ত হয়েছি, যখন আমার স্যাটেড জলপানো পেটে আনার জন্য গারকনের জন্য অপেক্ষা করছিলাম ...

আপনি এটি সঙ্গে ধারণা পেতে।

তাই আজ আমি ভেবেছিলাম কেস-সংবেদনশীল তবে অ্যাকসেন্ট-সংবেদনশীল কোলেশন ব্যবহার করার জন্য আমি অনুসন্ধানের শর্তটি চেয়েছিলাম তবে একটি খুঁজে পেল না। এর কোনও যুক্তিসঙ্গত কারণ আছে বা আমার নিছকই বিরল ব্যবহারের কেস?


আমি যে দস্তাবেজটির দিকে তাকিয়ে ছিলাম তার উদাহরণ এখানে (যদিও ভেন্ডর / সংস্করণ অজ্ঞেয়াদির বিষয়ে চিন্তা করছেন):

এসকিউএল সার্ভার কোলেশন নাম (এসকিউএল সার্ভার ২০০৮ আর 2)

উত্তর:


33

টি এল; ডিআর

কোলিশেশনের "বিক্রেতা-অজ্ঞেয়" দৃষ্টিভঙ্গি, এমনকি "সংস্করণ-অজ্ঞেয়াদি" বলে কিছুই নেই, কারণ তাদের বাস্তবায়ন - যার দিকগুলি সংবেদনশীল এবং নামকরণের সম্মেলনগুলি অন্তর্ভুক্ত করা যেতে পারে - সেগুলি বিক্রেতার সাথে নির্দিষ্ট এবং সময়ের সাথে সাথে পরিবর্তনযোগ্য ।

আমি যা পেয়েছি তার একটি সংক্ষিপ্ত বিবরণ এখানে দেওয়া হয়েছে, এবং বিবরণটি লাইনের নীচে দীর্ঘ অংশে রয়েছে:

RDBMS        Naming-             Combinations    Case-Sensitive and
             convention          of options?     Accent-Insensitive support?
-------      ------------        -------------   -----
SQL Server   _CS, _AI, etc       Yes             Latin1_General_100_CS_AI

DB2          _E{x}, _S{y}, etc   Yes             CLDR181_EO_S1

PostgreSQL   locale: en_US       N/A             unaccent(), not via Collation

MySQL        _cs, maybe _ai      No              No: _cs implies _as & _ci implies _ai
                                                 Yes? Create your own Collation :-)

Oracle       only _CI & _AI      No              No: _AI always implies _CI

SAP ASE      arbitrary: turdict  N/A             No: "AI" always implies "CI"

Informix     locale.codepage     N/A             No: no "AI" via Collations

আপনি যেমন চার্টটিতে দেখতে পাচ্ছেন, সাতটি আরডিবিএমএসের মধ্যে দু'জনই কলিশের মাধ্যমে "কেস-সংবেদনশীল এবং অ্যাকসেন্ট-সংবেদনশীল" অপারেশনগুলিকে সমর্থন করে যদিও তাদের নামকরণের বিভিন্ন কনভেনশন (এবং বেশ কয়েকটি অন্যান্য কার্যকরী পার্থক্য) রয়েছে।

একটি আরডিবিএমএস - পোস্টগ্রিসকিউএল - স্থানীয়ভাবে এই সংমিশ্রণটি সমর্থন করে না, তবে আপনি unaccent()অ্যাড-অন ফাংশনটি দিয়ে অ্যাকসেন্টগুলি সরিয়ে ফেলে এটি অর্জন করতে পারেন ।

সর্বশেষ চারটি আরডিবিএমএস, যার মধ্যে দুটি বিকল্পের জন্য একই রকম নামকরণের কনভেনশন রয়েছে, না এই দেশীয়ভাবে এই সংমিশ্রণটিকে সমর্থন করে বা অ্যাকসেন্ট / ডায়রাটিকাল চিহ্নগুলি মুছে ফেলার জন্য আপনার নিজস্ব ফাংশন না লিখে এটি সম্পাদনের কোনও উপায় বলে মনে হয় না। মাইএসকিউএল আপনার নিজস্ব কলেজ তৈরি করার অনুমতি দেয়, তবে এর প্রয়োজন হয় যে আপনি তারপরে এটি উত্স নিয়ন্ত্রণে যুক্ত করুন এবং এটি আপনার পরীক্ষা ও স্থাপনার প্রক্রিয়াতে অন্তর্ভুক্ত করুন যাতে এটি সমস্ত পরিবেশে সমস্ত সার্ভারগুলিতে প্রয়োগ করা যায় (তবে এখনও একটি দুর্দান্ত এবং নমনীয় বিকল্প) । এসএপি ASE উল্লেখ করেছেন যে এসএপি করতে অতিরিক্ত ইউনিকোড সাজানোর অর্ডার সরবরাহ, কিন্তু কি কোনো উল্লেখ তারা সরবরাহ করতে ইচ্ছুক হতে পারে।

শুভেচ্ছার সঙ্গে:

এর কোনও যুক্তিসঙ্গত কারণ আছে বা আমার নিছকই বিরল ব্যবহারের কেস?

আমি বলতে পারি যে এই উত্তরের জন্য গবেষণা করার সময় আমি মাইএসকিউএল-এর ক্ষেত্রে কেস-সংবেদনশীল এবং অ্যাকসেন্ট-সংবেদনশীল লোকদের অনেকগুলি উদাহরণ পেয়েছি, তবে কয়েকটি, যদি থাকে তবে আপনার কাঙ্ক্ষিত সংমিশ্রনের জন্য জিজ্ঞাসা করে।


কেস-সংবেদনশীল তবে অ্যাকসেন্ট-সংবেদনশীল কোলেশন ব্যবহার করার জন্য আমি অনুসন্ধানের শর্তটি চেয়েছিলাম তবে একটিও খুঁজে পেল না।
...
এই প্রশ্নটি বিক্রেতা / সংস্করণ অজ্ঞেয় সম্পর্কিত

আপনি আপনার অনুসন্ধানে অসফল হয়েছিলেন কারণ একটি কোলেশন স্পেসিফিকেশনের উপর ভিত্তি করে কোনও আরডিবিএমএস অনুসন্ধান করা সত্যিকার অর্থে বোধগম্য নয়। কোলিশেশনগুলি কীভাবে কাজ করে তা এটি নয়। এবং আপনি যখন এটি বিক্রেতার-অজগনস্টিক হিসাবে যেতে চান, বাস্তবতা হ'ল কোলিশেশন - কমপক্ষে আমরা যে অংশের সাথে যোগাযোগ করি - এটি খুব বেশি বিক্রেতা-নির্দিষ্ট, এবং আপনি যে স্কিমটি সন্ধান করেছিলেন তাতে সবসময় ফিট হয় না ।

স্ট্রিং তুলনা এবং বাছাই করা অত্যন্ত জটিল এবং এই নিয়মগুলি সম্পাদন করার বিভিন্ন উপায় রয়েছে। একটি পদ্ধতি হ'ল ম্যাপিংগুলি থাকে যা এক বা একাধিক বিধি বিবেচনা করে। সুতরাং কেস এবং অ্যাকসেন্টের জন্য সংবেদনশীল এবং সংবেদনশীল চারটি সংমিশ্রণ চারটি পৃথক ম্যাপিংয়ের সমান হবে। উদাহরণস্বরূপ, আপনি এটি এসকিউএল সার্ভারের কোলেশন নামের জন্য এমএসডিএন পৃষ্ঠায় দেখেছেন । আপনি নিচে স্ক্রল থাকেন তবে আপনি সেই চার্টে বাম কলামে দেখতে পাবেন Sort Order ID। প্রতিটি কোলেশনের আলাদা আইডি রয়েছে: SQL_Latin1_General_Cp1_CI_AS= 52 SQL_Latin1_General_Cp1_CS_ASটি = 51 যখন , কেবলমাত্র পার্থক্যটি কেস-সংবেদনশীলতায় in

অথবা, এটি নিয়ম-ভিত্তিক হতে পারে, যেমন ইউনিকোড কোলিশন অ্যালগরিদম (ইউসিএ) এর মাধ্যমে ইউনিকোড কী অফার করে। এই পদ্ধতির মধ্যে প্রতিটি চরিত্রকে ডিফল্টরূপে এক বা একাধিক ওজন দেওয়া হয়। তারপরে, প্রতিটি সংস্কৃতি / লোকালের কাছে সেই ওজনগুলির যে কোনও একটিকে ওভাররাইড করতে, বা নিয়ম সরিয়ে ফেলার বা বিধি যুক্ত করার বিকল্প রয়েছে। অ্যালগরিদম কোনও স্থানীয়-নির্দিষ্ট বিধি বিবেচনা করে এবং তারপরে যেকোন বিকল্প বেছে নেওয়া (সংবেদনশীলতা, কেস-সংবেদনশীল প্রকারগুলি ইত্যাদি করার সময় কেসটি প্রথম আসে) এর উপর ভিত্তি করে সেই ওজনগুলি সম্ভাব্যভাবে ম্যানিপুলেট করে। ইউনিকোড বাছাই করা অ-ইউনিকোড বাছাইয়ের তুলনায় কিছুটা ধীর হওয়ার কারণ এটি।

প্রকৃতপক্ষে কয়টি বিকল্প রয়েছে তা অনুধাবন করতে (যেমন আসল জটিলতা), আইসিইউ (ইউনিকোডের আন্তর্জাতিক উপাদানসমূহ) প্রকল্প থেকে এই ডেমোটি পরীক্ষা করে দেখুন:

আইসিইউ কোলেশন ডেমো

সেখানে 8 পৃথক অপশন উল্লেখ করতে হয়, এবং তাদের কিছু কোলেশন নাম স্পেসিফিকেশন একাধিক উপাদান আছে যা আপনি (যেমন চিন্তা করা হয় প্রতিনিধিত্ব করতে CS, CI, AS, AI, ইত্যাদি)। সেখানে কতগুলি প্রকরণ রয়েছে তা ম্যাপিং ফাইলের পদ্ধতির ব্যবহারে যেখানে প্রতিটি সংমিশ্রনের নিজস্ব আইডি রয়েছে তাতে হাজার হাজার ফাইলের ফলাফল ঘটতে পারে। এই বিশেষ ভাষাগুলিতে যখনই পরিবর্তন হয় বা বাগগুলি পাওয়া যায় তখন এই ফাইলগুলির মধ্যে অনেকেরই আপডেট হওয়া দরকার। এই কারণেই এসকিউএল সার্ভার ২০১২ সালে এই ধরণের কলশনগুলির মধ্যে কেবল 75 টি রয়েছে (যেমন নামগুলির সাথে শুরু হওয়া SQL_)। সুতরাং জন্য কোন সংমিশ্রণ _CS_AI

এবং ইউসিএ-ভিত্তিক কোলিশেশনের জন্য কেন আপনি এই সমন্বয়টি খুঁজে পাচ্ছেন না তার কারণ? ঠিক আছে, এসকিউএল সার্ভার ২০১২-এ 3810 টি কলেজ রয়েছে যা দিয়ে শুরু হয় না SQL_, সুতরাং মোট 3885 টি কলেশন রয়েছে। ওয়েব পৃষ্ঠায় সম্পূর্ণরূপে গণনা করাতে এই তালিকাটি খুব দীর্ঘ বলে মনে হচ্ছে। তবে কেন আপনি অন্য বিক্রেতাদের জন্য এই সংমিশ্রণটি খুঁজে পেলেন তা পুরোপুরি ব্যাখ্যা করে না।

ইতিমধ্যে যা উল্লিখিত হয়েছে (তার বাইরে অনেকগুলি সংমিশ্রণ এবং তালিকার জন্য অনেকগুলি বাস্তবায়ন) এর বাইরেও আপনাকে এখনও বিক্রেতার-নির্দিষ্ট প্রয়োগের সাথে লড়াই করতে হবে। অর্থ: সমস্ত বিক্রেতারা এই সমস্ত বিকল্পগুলির টেলিংয়ের অনুমতি দেয় না, এবং প্রথম স্থানে কোলিশনের জন্য কোনও নামকরণের নামকরণ নেই। এছাড়াও, সমস্ত বিক্রেতারা বাছাই করার বিকল্পগুলি কল্যাণের অংশ হিসাবে দেখেন না: পোস্টগ্রিসএসকিউএল কলশনগুলি নির্বাচিত লোকেলের জন্য ডিফল্ট ক্রম হয় এবং ILIKEকেস-সংবেদনশীল তুলনা পেতে আপনাকে ব্যবহার করতে হবে। বিক্রেতা-নির্দিষ্ট তথ্যের জন্য নীচে দেখুন।

এসকিউএল সার্ভার (মাইক্রোসফ্ট)

আপনি সেই দুটি এমএসডিএন ডকুমেন্টেশন পৃষ্ঠাগুলিতে যা দেখছেন এবং @ মার্টিনস্মিথ প্রশ্নের প্রশ্নের একটি মন্তব্যে (নীচে কিছুটা সংশোধিত) দেওয়া প্রশ্নের মধ্যে পার্থক্য:

SELECT *
FROM   sys.fn_helpcollations()
WHERE  [name] LIKE '%[_]CS[_]AI%';

এই দুটি এমএসডিএন পৃষ্ঠাগুলি বিশেষত খুব অবহেলিত এসকিউএল সার্ভার কলেশনগুলিকে উল্লেখ করছে, যেখানে এই কোয়েরির ফলাফল হিসাবে প্রদর্শিত কলশনগুলি (এসকিউএল সার্ভার 2012, এসপি 3 হিসাবে তাদের মধ্যে 888) হ'ল উইন্ডোজ কোলিশন।

এসকিউএল সার্ভার 2000-এ শুরু করে, পুরানো এসকিউএল সার্ভার কলেশন (এসকিউএল সার্ভার উইন্ডোজ কোলিশনে ট্যাপ করতে সক্ষম হওয়ার আগে তৈরি হয়েছিল) হ্রাস করা হয়েছে এবং নতুন নিয়ম বা কার্যকারিতা সহ আপডেট করা হচ্ছে না। উদাহরণস্বরূপ, এসকিউএল সার্ভার ২০১২ সালে শুরু করে, কোলিশনের একটি সেট সংযোজন করা হয়েছিল যা পরিপূরক চরিত্রগুলির জন্য অন্তর্নির্মিত ফাংশনগুলির যথাযথ হ্যান্ডলিংকে সমর্থন করে (যেমন "বেস" এর বাইরে বাকি ইউটিএফ -16 অক্ষর 65,536 অক্ষর প্রাথমিকভাবে ইউসিএস -2 এ সংজ্ঞায়িত করা হয়েছে )। এই নতুন কলেজগুলি শেষ হয় _SC( এস প্র પ્ লেমানারি সি হ্যাকার্টারের মতো)।

এসকিউএল সার্ভার কলিকেশন ব্যবহার না করা ভাল - যাদের নাম দিয়ে শুরু হয় SQL_। অতএব আপনার কাছে প্রচুর সংযোগের অ্যাক্সেস রয়েছে যা আপনি সন্ধান করছেন এমন বিকল্পগুলির সংমিশ্রণকে সমর্থন করে (যেমন কেস-সংবেদনশীল এবং অ্যাকসেন্ট-সংবেদনশীল)। যখনই উপলভ্য হবে, _SCততক্ষণ এক প্রান্তটি ব্যবহার করা ভাল যতক্ষণ না এটির যে সমস্ত বিকল্প আপনি চাইছেন তা রয়েছে।

এসকিউএল সার্ভার _CS_AIনামকরণ কনভেনশন ব্যবহার করার সময় , উইন্ডোজ কলিশনের সমস্ত 3810 (এসকিউএল সার্ভার হিসাবে 2012) এর কোনও তালিকা নেই। সেখানে ঠিক হয় উইন্ডোজ কোলেশন নাম পৃষ্ঠা এটাই তালিকা লোকেল এবং সংস্করণ, এবং কিভাবে নামকরণ কনভেনশন কাজ সব, কিন্তু যে।

এসকিউএল সার্ভার প্রস্থ এবং কানা সংবেদনশীলতা উভয়ই টগল সমর্থন করে।

মাইএসকিউএল (ওরাকল কিনেছেন)

মাইএসকিউএল সংস্করণ 5.7, ডকুমেন্টেশন রাজ্যের এটি অবলম্বন পাওয়া _ai, _as, _ci, এবং _csপ্রত্যয় (এবং _binসম্পূর্ণতার জন্য), কিন্তু বলে:

অ্যানিবাইনারি কোলেশন নামগুলির জন্য যা অ্যাকসেন্ট সংবেদনশীলতা নির্দিষ্ট করে না, এটি কেস সংবেদনশীলতা দ্বারা নির্ধারিত হয়। এটি হ'ল, যদি কোনও কোলেশন নামটি না থাকে _aiবা _as, _ciনামটিতে বোঝায় _aiএবং _csনামটি বোঝায় _as

উদাহরণস্বরূপ, latin1_general_ciকেস সংবেদনশীল (এবং উচ্চারণ সংবেদনশীল, স্পষ্টতই), latin1_general_csকেস সংবেদনশীল (এবং উচ্চারণ সংবেদনশীল, স্পষ্টতই)

এটি অবশ্যই বোঝায় যে একটি latin1_general_cs_aiকোলেশন থাকা সম্ভব । যাইহোক, মাইএসকিউএল 5.5.50 সার্ভার যা আমি এক্সেস আছে একটির বেশি প্রত্যয় যে কোনো collations নেই, এবং শুধুমাত্র সাফিক্স আমি দেখতে আছেন: _cs, _ci, এবং _bin198 মোট Collations জুড়ে। আমি তাদের তালিকাতে শো সারণি কমান্ডটি ব্যবহার করেছি।

সুতরাং, যখন মাইএসকিউএল অনুরূপ নামকরণ কনভেনশন ব্যবহার করে বলে মনে হচ্ছে (কমপক্ষে two দুটি বিকল্পের দিকে যেতে পারে), আপনি যা খুঁজছেন তার সাথে মিল খুঁজে পাচ্ছি না। তবে, উচ্চারণগুলি (এবং অন্যান্য ছদ্মবেশী চিহ্নগুলি) কেটে ফেলা এবং _csআপনি যা চান তা পেতে একটি কোলেশন ব্যবহার করা সম্ভব ( আপনি পোস্টগ্র্রেএসকিউএল এ কীভাবে করবেন তার অনুরূপ - নীচে দেখুন)। তবে আমি এই বিকল্প সম্পর্কে নিশ্চিত নই এবং আরও গবেষণার জন্য এই মুহুর্তে সময় নেই।

অথবা , আপনি যা করতে চান ঠিক তেমন করতে আপনি নিজের নিজস্ব কলেজ তৈরি করতে পারেন। অন্যান্য আরডিবিএমএস থেকে পৃথক, মাইএসকিউএল আপনার নিজের কলেজগুলি যুক্ত করার চেয়ে বরং সহজ করে তোলে, এক্ষেত্রে আপনি প্রতিটি চরিত্রের ওজন নিয়ন্ত্রণের উপর সম্পূর্ণ নিয়ন্ত্রণে আছেন। আরও তথ্যের জন্য দয়া করে একটি 8-বিট চরিত্রের সেটটিতে একটি সাধারণ কোলেশন যুক্ত করা এবং একটি ইউনিকোড অক্ষর সেটটিতে একটি ইউসিএ কোলেশন যুক্ত করা দেখুন।

মাইএসকিউএল কীভাবে বিভিন্ন ধরণের কলেশন পরিচালনা করে সে সম্পর্কে আরও তথ্যের জন্য, দয়া করে তাদের কলেজের বাস্তবায়ন প্রকারের পৃষ্ঠাটি দেখুন।

পোস্টগ্রি

পোস্টগ্রাইএসকিউএল-এ কোলিশগুলি অনেক কম নমনীয় বলে মনে হচ্ছে। আপনি শুধুমাত্র সংস্কৃতি / লোকেল উল্লেখ করুন: en_US, de_DE, ইত্যাদি দয়া করে তাদের ডকুমেন্টেশন পৃষ্ঠাগুলি দেখুন কোলেশন সমর্থন বিস্তারিত জানার জন্য। অতএব, ডিফল্টরূপে আপনি সংস্কৃতি-নির্দিষ্ট ওভাররাইডগুলি পান, কিন্তু কোলেশনগুলি অন্যথায় সমস্ত সংবেদনশীল (যা যাইহোক, "বাইনারি" সমষ্টি হিসাবে একই নয় )।

কেস সংবেদনশীলতা পেতে আপনি ILIKE (বিভাগ 9.7.1) ব্যবহার করতে পারেন , তবে উচ্চারণ সংবেদনশীলতার জন্য তাদের অনুরূপ অপারেটর নেই। তবে, আমি দেখতে পেলাম যে তাদের একটি অদ্ভুত ফাংশন রয়েছে যা অ্যাকসেন্টগুলি এবং অন্যান্য ডায়রিটিকাল চিহ্নগুলি সরিয়ে ফেলার জন্য ব্যবহার করা যেতে পারে। দয়া করে মনে রাখবেন যে এই ফাংশনটি একটি অতিরিক্ত সরবরাহিত মডিউল এবং তাই এটি ব্যবহারের জন্য কোনও নির্দিষ্ট পোস্টগ্রিজ এসকিউএল সার্ভারে অগত্যা উপস্থিত নেই। যে সর্বাধিক সংযুক্ত ডকুমেন্টেশন বলে:

উত্স বিতরণ থেকে তৈরি করার সময়, এই উপাদানগুলি স্বয়ংক্রিয়ভাবে নির্মিত হয় না, যদি না আপনি "ওয়ার্ল্ড" টার্গেট তৈরি করেন
...
আপনি যদি পোস্টগ্রিজএসকিউএল-এর পূর্ব-প্যাকেজযুক্ত সংস্করণ ব্যবহার করে থাকেন তবে এই মডিউলগুলি সাধারণত একটি পৃথক সাবপ্যাকেজ হিসাবে উপলব্ধ করা হয়, যেমন PostgreSQL-contrib।

আপনার যদি না থাকে এবং এটি না চান তবে কীভাবে সেই ফাংশনটি পাবেন সে সম্পর্কে নির্দেশনার জন্য দয়া করে সেই ডকুমেন্টেশনটি দেখুন।

নিম্নলিখিত স্ট্যাক ওভারফ্লো উত্তরে আরও তথ্য পাওয়া যাবে:

পোস্টগ্র্রেএসকিউএল "অ্যাকসেন্ট সংবেদনশীল" কোলিশেশন সমর্থন করে?

ডিবি 2 (আইবিএম)

মাইক্রোসফ্ট এসকিউএল সার্ভারের অনুরূপ, ডিবি 2 এর মধ্যে দুটি ধরণের কলেশন রয়েছে:

  • "সিস্টেম" Collations, যা নিদিষ্ট নিম্নলিখিত বিন্যাসে ব্যবহার করছেন: SYSTEM_{codepage}_[optional-territory]। এগুলি খুব নমনীয় নয় এবং কেস, অ্যাকসেন্ট বা কোনও কিছুতে টেলরিং সংবেদনশীলতা সমর্থন করে বলে মনে হয় না। আপনি সমর্থিত কল্যাশনের তালিকাটি এখানে পাবেন: সমর্থিত অঞ্চল কোডগুলি এবং কোড পৃষ্ঠাগুলি

  • ইউনিকোড কোলেশন অ্যালগরিদম (ইউসিএ) ভিত্তিক কোলিশান। এগুলি বেশ কিছুটা সেলাইয়ের সমর্থন করে। আচরণ, নামকরণ কনভেনশন এবং বৈধ লোকেলের তালিকাকে কীভাবে কনফিগার করতে হয় সে সম্পর্কে বিশদের জন্য দয়া করে তাদের ইউনিকোড কলেশন অ্যালগরিদম ভিত্তিক কোলিশেশন পৃষ্ঠা দেখুন। দয়া করে মনে রাখবেন যে সারণি 1 এ, তৃতীয় সারির উদাহরণ ("কেস লেভেল") দিয়ে শুরু হয়:

    কেস লেভেলের এ্যাট্রিবিউটটি সেট করা এবং স্ট্রেন্থ অ্যাট্রিবিউটকে প্রাথমিক স্তরে সেট করা অ্যাকসেন্টকে এড়িয়ে যাবে তবে কেস নয়।

    আপনি যা খুঁজছিলেন ঠিক তেমনই। কিন্তু যে জন্য সিনট্যাক্স হল: CLDR181_EO_S1। এবং এই কারণেই আপনার অনুসন্ধানে ডিবি 2 এর সাথে সম্পর্কিত কোনও কিছুই পাওয়া যায় নি।

আকাশবাণী

অরক্ষেল 10 জি অ্যাকসেন্ট সংবেদনশীল তুলনা এবং বাছাইয়ের জন্য সমর্থন যোগ করেছে। যাহোক:

  • তাদের কাছে কেবল "সংবেদনশীল" অপারেশনগুলি বোঝানোর বিকল্প রয়েছে: _CIএবং_AI
  • আপনি একবারে এই বিকল্পগুলির মধ্যে একটি নির্দিষ্ট করতে পারবেন
  • কেস-সংবেদনশীল বিকল্প - _CI- এখনও উচ্চারণ সংবেদনশীল
  • অ্যাকসেন্ট-সংবেদনশীল বিকল্প - _AI- "সর্বদা ক্ষেত্রে-সংবেদনশীলও হয়।" (নীচে লিঙ্কযুক্ত তাদের ডকুমেন্টেশন থেকে উদ্ধৃত)

আরও বিশদ এবং উদাহরণের জন্য দয়া করে তাদের ভাষাগত বাছাই এবং স্ট্রিং অনুসন্ধান নথিপত্র পৃষ্ঠা দেখুন।

এসএপি এএসই (পূর্বে সাইবাস এএসই, ওরফে সাইবাস)

এএসই প্রতিটি লোকেল / চরিত্রের সেট অনুযায়ী সংবেদনশীলতার নিম্নলিখিত এক বা একাধিক সংকেত সমর্থন করে:

  • কেস-সংবেদনশীল, অ্যাকসেন্ট-সংবেদনশীল
  • কেস-সংবেদনশীল, অ্যাকসেন্ট-সংবেদনশীল
  • কেস-সংবেদনশীল, অ্যাকসেন্ট-সংবেদনশীল, পছন্দ সহ অর্ডার
  • কেস-সংবেদনশীল, অ্যাকসেন্ট-সংবেদনশীল

আপনি ডিফল্ট বাছাই অর্ডার পৃষ্ঠা নির্বাচন করে লোকেল, চরিত্র সেট এবং উপলব্ধ বাছাই অর্ডারগুলির মধ্যে সম্পর্ক দেখতে পাচ্ছেন । এবং আপনি তাদের কলেজের নাম এবং আইডি পৃষ্ঠায় কলঙ্কের সম্পূর্ণ তালিকা দেখতে পারেন ।

তাদের সংবিধানের নামকরণের কনভেনশনটি নির্বিচারে যে এগুলি সমস্ত 4 - 8 টি অক্ষর এবং লোকেলের নাম বা কোড পৃষ্ঠা এবং বাছাইয়ের কিছু ধারণাটি ক্যাপচার করার চেষ্টা করে। উদাহরণ স্বরূপ:

altnoacc== "সিপি 850 বিকল্প - কোনও অ্যাকসেন্ট নেই"
rusdict== "রাশিয়ান অভিধান ক্রমানুসারে"
dynix== "চাইনিজ ফোনেটিক ক্রম"

তাদের ডিফল্ট ইউনিকোড বাছাই অর্ডার পৃষ্ঠা নির্বাচন করে একটি নোট রয়েছে যা উল্লেখ করে:

আপনি $/collate/Unicodeডিরেক্টরিতে বহিরাগত ফাইলগুলি ব্যবহার করে সাজানোর অর্ডার যুক্ত করতে পারেন । নাম এবং কোলেশন আইডি সংরক্ষণ করা হয় syscharsetssyscharsetsআপনি ডিফল্ট ইউনিকোড সাজানোর অর্ডার সেট করার আগে বহিরাগত ইউনিকোড সাজানোর অর্ডারগুলির নাম থাকা উচিত নয় ।
...
বাহ্যিক ইউনিকোড সাজানোর আদেশগুলি এসএপি সরবরাহ করে। বাহ্যিক ইউনিকোড সাজানোর আদেশগুলি তৈরি করার চেষ্টা করবেন না।

স্পষ্ট নয় যে এসএপি কেস-সংবেদনশীল এবং অ্যাকসেন্ট- সংবেদনশীলকে অনুমতি দেওয়ার জন্য একটি বাহ্যিক সাজানোর আদেশ সরবরাহ করবে কিনা । হয়তো কোনও দিন আমি তাদের ইমেল করব এবং যদি কেউ অনুরোধ করা যায় তবে জিজ্ঞাসা করব।

সংবেদনশীলতাগুলির কাঙ্ক্ষিত সংমিশ্রণটি পেতে, আপনাকে অ্যাকসেন্টগুলি এবং অন্যান্য ছদ্মবেশী চিহ্নগুলি সরাতে স্কেলার ব্যবহারকারী-সংজ্ঞায়িত ফাংশন তৈরি করতে সক্ষম হওয়া উচিত ।

ইনফর্মিক্স (আইবিএম কিনেছে)

ইনফর্মিক্স বেশিরভাগই কেবল একটি কোলেশনের ডিফল্ট বাছাই এবং তুলনা আচরণকে সমর্থন করে। সুতরাং কোলেশনগুলি কেবলমাত্র স্থানীয় এবং চরিত্রের সেট। কেস-সংবেদনশীলতা ডাটাবেস-স্তরে পরিচালিত হয় এবং ডিফল্টরূপে সেগুলি কেস-সংবেদনশীল। আপনি একটি ডাটাবেস (একটি টেবিল বা একটি কলাম, অথবা একটি ক্যোয়ারী, বা এমনকি একটি বিধেয়) দ্বারা কেস-অবশ হতে সেট করতে পারেন NLSCASE অবশ উল্লেখ মধ্যে CREATE DATABASEবিবৃতি।

ডেটাবেস কোলেশন - স্থানীয় এবং অক্ষর সেট - ক্লায়েন্ট সংযোগ প্রতি ওভাররাইড করা যেতে পারে, কেস সংবেদনশীলতা সেটিংস ওভাররাইড করার উপায় আছে বলে মনে হয় না। এবং, NLSCASEবিকল্পটিতে একটি কারণে নামটিতে "এনএলএস" রয়েছে: এটি কেবল প্রভাবিত করে NCHARএবং NVARCHARডেটা; CHARএবং VARCHARসর্বদা কেস-সংবেদনশীল।

অ্যাকসেন্ট-সংবেদনশীলতা সম্বোধন করা হয় না, বা অ্যাকসেন্টস / ডায়ক্রিটিক্যাল চিহ্নগুলি ফালা করার জন্য কোনও বিল্ট-ইন ফাংশন নেই।

ইনফর্মিক্স কোলেশন নামকরণ কনভেনশনটি হ'ল:

<lang>_<country>.<code set>

কোথায়:

  • <lang> = একটি ২-অক্ষর বা 3-বর্ণের ভাষা কোড
  • <country> = একটি 2-অক্ষরের দেশ বা অঞ্চল কোড
  • <code set> = নীচের 3 টি সমতুল্য উপায়গুলির মধ্যে একটিতে নির্দিষ্ট কোড পৃষ্ঠা:
    • নাম: 8859-1
    • আইবিএম সিসিএসআইডি সংখ্যার দশমিক মান: 819
    • আইবিএম সিসিএসআইডি নম্বরটির হেক্সাডেসিমাল মান: 0333

সুতরাং, নিম্নলিখিত তিনটি স্থানীয় স্পেসিফিকেশন সমস্ত একই একই লোকেলের উল্লেখ করে:

  • fr_fr.8859-1
  • fr_fr.819
  • fr_fr.0333

আরও তথ্যের জন্য, দয়া করে দেখুন:


1
@nedaywhen ভুল বোঝার জন্য দুঃখিত। এই প্রশ্নের প্রকৃতপক্ষে কোনও ধারণা নেই বলেই প্রশ্নের বিক্রেতার-অজগনীয় দিকটি পুরোপুরি পরিষ্কার ছিল না বা কোলিশেশনও সর্বদা নামকরণের এই সম্মেলনটি ব্যবহার করে না। আমি আরও তথ্য সংগ্রহ করেছি (আরও 3 টি আরডিবিএমএসের জন্য) এবং আমার উত্তর আপডেট করছি।
সলোমন রুটজকি

4
টাইপোর জন্য দুঃখিত তবে আমি বোঝাতে চাইছি 'রঙিন' উদাহরণস্বরূপ নীল বর্ণের বড় হাতের অক্ষর এবং লাল রঙে উচ্চারণ ... কেবল মজা করছি! আমি সহজেই পেয়েছি এটি সেরা উত্তর। অনেক ধন্যবাদ :)
onedaywhen

@ মাওনয়ভেওঁ ওহোহহ ... রঙ ... এখন আমি এটি পেয়েছি ... সৌভাগ্যক্রমে যেটি সহজ: কেবলমাত্র --colorপতাকাটি ব্যবহার করুন । তবে আমি মনে করি যে আপনি যদি জেসিএল ব্যবহার করে আপনার ক্যোয়ারী জমা দেন কেবল তবেই কাজ করে। ;-)। অথবা, আপনি যদি লাল এবং নীল দেখতে চান তবে আমার এই উত্তরে ব্যবহৃত চিত্রটি যথেষ্ট হবে? কিন্তু, একটি গুরুতর নোটে: সেই দুর্দান্ত প্রশংসা করার জন্য আপনাকে অনেক ধন্যবাদ 😺 এছাড়াও, আমি স্যাপ এএসইর জন্য সবেমাত্র তথ্য যুক্ত করেছি এবং আরও কয়েকটি সম্পাদনা করেছি, সুতরাং দয়া করে বিশদটির জন্য পুনর্বিবেচনার ইতিহাসটি দেখুন।
সলোমন রুটজকি

আপডেট: আইসিইউ কোলেশনগুলির জন্য 10 লাভ পোস্টগ্রেস করে। পিটার আইজেন্ট্রাউটের এই ব্লগ পোস্টটি দেখুন ।
বেসিল Bourque

@ বাসিলবার্ক PG10 সম্পর্কে উল্লেখ করার জন্য ধন্যবাদ। সেই ব্লগ পোস্টটি শেষে বলেছে যে "আইসিইউ এই অঞ্চলে প্রচুর কার্যকারিতা সরবরাহ করে যা আমরা এখনও পোস্টগ্রিজ এসকিউএল এর মাধ্যমে প্রকাশ করছি না case কেস-সংবেদনশীল বাছাই, অ্যাকসেন্ট-সংবেদনশীল বাছাই এবং সম্পূর্ণভাবে একটি কোলেশন কাস্টমাইজ করার জন্য বিকল্প রয়েছে Look দেখুন ভবিষ্যতে পোস্টগ্রিজ এসকিউএল প্রকাশের জন্য তাদের জন্য "" সুতরাং এটির প্রথম / বর্তমান প্রয়োগে এটি আমার উত্তরের তথ্যের কোনও পরিবর্তন করে না। যদি ভবিষ্যতের অফারটি কেস এবং অ্যাকসেন্ট সংবেদনশীলতা নিয়ন্ত্রণের অনুমতি দেয় তবে আমি সেই উত্তরটি দিয়ে আমার উত্তর আপডেট করব। পিজির জন্য দুর্দান্ত প্রথম পদক্ষেপ, যদিও :-)।
সলোমন রুটজকি

-3

বিকল্প নাম বর্ণনা NLS_LANG বর্তমান ভাষা, অঞ্চল এবং ডাটাবেস অক্ষর সেট, যা সেশন-বিস্তৃত বিশ্বায়ন পরামিতি দ্বারা নির্ধারিত হয়। এনএলএস_লঙ্গোইলটি অধিবেশনটির বর্তমান ভাষা। NLS_SORT পাঠ্যকে বাছাই বা তুলনা করার সময় অক্ষর মানগুলির ক্রম ব্যবহৃত হয়।

বর্তমান এনএলএস সেটিংস পরীক্ষা করতে, টাইপ করুন:

v $ NLS_PARAMETERS থেকে * নির্বাচন করুন;

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.