در این مقاله قصد داریم شما را با Collation در Database آشنا کنیم
Collation در Database چیست؟
در سیستمهای پایگاه داده، Collation مشخص میکند که چگونه دادهها در پایگاه داده مرتب و مقایسه شوند. برای مثال Collation مشخص میکند که رفتار دیتابیس در برابر حروف کوچک و بزرگ چگونه باشد همچنین برای تعیین چگونگی تشخیص و برخورد با لهجهها میباشد. برای دسته بندی زبان ها نیز میتوان از این مورد استفاده کرد به این صورت که در زبان ژاپنی برای مثال از کدام دسته بندی در زبان ژاپنی استفاده کنیم.
در سیستمهای مختلف مدیریت پایگاه داده گزینههای مختلف را به شما ارائه میدهد بسته به نوع DBMS و Collation میتوان سطح سرور سطح پایگاه داده سطح جدول و سطح ستون را مشخص کرد. بنابراین شما میتوانید تعیین کنید که کدام کد در هنگام اجرا استفاده شود!
برای مثال
در حقیقت Collation مجموعهای از نمادها و کد گذاریها است که در بردارنده قوانین برای مقایسه کاراکتر هاست. فرض کنید ما یک الفبا با 4 حرف داریم :
A
B
A
B
و به هر حرف یک عدد اختصاص میدهیم :
A=0
B=1
a=2
b=3
اگر بخواهیم دو رشته A و B را مقایسه کنیم ساده ترین راه در این حالت نگاه کردن به کد گذاری آن هاست و این که A کوچکتر از B است. در واقع با این کار رمزگذاریها را مقایسه میکنیم .
حال اگر بخواهیم بگوییم حروف کوچک و بزرگ معادل هم هستند میتوانیم A=a و B=b را در رمزگذاری ها اضافه کنیم (و به همین سادگی میتوانیم این موارد را مقایسه و تشخیص دهیم). این مثال گفته شده تنها الفبایی با 4 حرف و حالتهای محدود میباشد در صورتی که این مجموعه کمی بزرگتر شود و حتی لهجهها در الفبایهای مختلف را برای آنها لحاظ کنیم خواهیم دید که این رمزگذاریها بسیار زیاد و طولانی خواهند شد.
با استفاده از Collation در MySQL میتوانیم موارد زیر را انجام دهیم:
- رشتهها را با استفاده از مجموعههای مختلفی از کاراکتر ها ذخیره کرد
- رشتهها را با استفاده از مقادیر مختلف مقایسه کرد
- رشتهها را با مقادیر مختلف با یکدیگر مخلوط کرد
- تنظیمات کاراکتر ها و مرتب سازی آن ها را انجام داد
با دیگر مقالات Server.ir همراه باشید.
خيلي خوب بود
ممنون از نظر شما
عالی بود
سلام و عرض ادب
متشکرم و خوشحالیم که مطلب براتون مفید بوده است.
ممنون بابت مقاله خوبتون.کاش مثال ها و توضیحات بیشتری داشت این مقاله.
سلام و عرض ادب
سپاس از نظر ارزشمند شما. حتما در آپدیتها یا مقالات بعدی تکمیل خواهد شد.