PDA

View Full Version : collation فارسی



mojtaba.baghban
پنج شنبه 20 مهر 1391, 12:11 عصر
سلام
می‌خواستم بدونم collation فارسی تو postgresql اسمش چیه؟
یعنی تو تعریف دیتابیس تو قسمت LC_COLLATE چی بنویسم.
آخه collation دیفالتی که خودش داره واسه مرتب سازی یه فیلد با مقادیر فارسی درست کار نمی‌کنه.
در واقع من یه collation فارسی واسه انکدینگ utf8 می‌خوام
با تشکر
لطفا جواب بدین آخه بعد از ساخت دیتابیس دیگه نمیشه collation اونو تغییر داد

mojtaba.baghban
پنج شنبه 20 مهر 1391, 15:31 عصر
پس از مدتی گوگل کردن فهمیدم که postgresql از collation های خود سیستم عامل استفاده می‌کنه. رفتم از تو سیستم عامل (واسه من آرچ لینوکس) اونو فعال کردم و اسمش واسه استفاده در postgresql هستش fa_IR.UTF-8 . حالا دیتابیسم رو با این collation ساختم ولی باز تو مرتب کردم مشکل داره. بیشتر مشکلش هم با حرف 'ی' هستش. البته بگم که من کیبورد استاندارد فارسی دارم و 'ی' رو فارسی می‌نویسم نه عربی. موندم دیگه مشکل از کجاست.
لطفا راهنمایی کنید.

mojtaba.baghban
پنج شنبه 20 مهر 1391, 19:39 عصر
لطـــــــــف کنید. لطــــــــفا جواب بدین. من با حرف 'ی' مشکل دارم. در حالیکه تو mysql مشکلی نیست. تو mysql از collationــه utf8_general_ci استفاده کردم.

mojtaba.baghban
جمعه 21 مهر 1391, 13:40 عصر
ظاهرا کسی تو بخش postgresql فعالیت نمی‌کنه. هنوز دلیل عدم استقبال کاربران از این دیتابیس قدرتمند رو نفهمیدم. بگذریم...
مشکل من حل شد. مشکل ار این بود که lc_ctype رو برابر fa_IR.UTF-8 قرار نداده بودم و فقط lc_collate برابر این مقدار بود.
البته باید به این توجه داشته باشید که fa_IR توی فایل locale.genـه سیستم عاملتون از حالت کامنت خارج شده باشه.
البته فایل locale.gen مربدط به توزیع آرچ لینوکس هستش که تو مسیر /etc هستش. توی بقیه توزیع‌ها و بقیه سیستم‌عامل‌ها نمیدونم چجوریه.

developerOrg
دوشنبه 19 فروردین 1392, 11:57 صبح
در لیست کولیشن ها Persian هم وجود داره
به نظر شما از کدوم مورد باید استفاده کرد؟