باسلام استاد بهتر است در زمان ساخت دیتا بیس ، collation کل دیتا بیس رو جوری تعیین کنیم که فارسی پشتیبانی کند یا مثل شما هر فیلدی که امکان فارسی بودن داشت collation مناسب فارسی براش ست کنیم کدوم حالت؟؟
سلام
میتونید به طور پیشفرض برای دیتابیس collation انتخاب کنید تا اگه به فیلدی collation ندادید به طور پیش فرض collation تعریف شده را بردارد
امیر صالحی۲۷ فروردین ۱۳۹۹، ۱۹:۵۵
سلام دوست گلم
شاید خالی از لطف نباشه اطلاعاتی که در مورد collation دارم رو باهات share کنم!
اول اینکه توی محیط phpmyadmin از کوئری sql زیر استفاده کن تا لیست کاراکتر ستا رو ببینی
SHOW CHARACTER SET;
خب حالا فرضا میخوای لیست collationهای یک کاراکتر ستو ببینی
فرضا لیست collationهای کاراکتر سته utf۸mb۴
میتونی از کوئری زیر استفاده کنی
SHOW COLLATION LIKE 'utf8mb4%'
این کوئری میگه که همه ی collation هایی که با utf۸mb۴ شروع میشنو بهم نشون بده
و یه نکته دیگ هم اینکه collation رو میتونی توی چهار سطح مشخص کنی
server: واسه کل سرور
database : واسه کل دیتابیس
table : واسه یه جدول خاص از دیتابیس
column : و واسه یک ستون خاص از یک جدول
در مورد اینکه چه حالتی بهینهتر هست هم فکر میکنم بهتره collation ی که بیشتر مورد استفاده هست رو توی سطوح بالاتر استفاده کنیم و ستون هایی که collation خاص نیاز دارند رو collation مربوط ب خودشون رو بهشون بدیم
موفق باشی!
میلاد بهرامی۲۷ فروردین ۱۳۹۹، ۲۲:۱۵
تعریف collation به صورت utf8-general-ci برای ساخت دیتابیس بسته به کار شما خیلی مناسب هستش که به صورت پیفرش برای ستونها در نظر گرفته میشه ول اگر گزینه utf8-persian-ci رو انتخاب کنید برای تمام ستونها کاراکترهای فارسی و عربی رو هم اضافه میکنه که این میشه یک بار اضافه . پیشنهاد میشه شما پیفرض رو جنرال قرار بدید و فقط اون ستون هایی که قرار هست داخلش فارسی ذخیره بشه به صورت فارسی انتخاب بشه البته داخل جنرال تا حدودی همه کاراکترها پشتیبانی میشود . برای مثال شاید جایی نیاز باشه که شما فقط از حروف انگلیسی استفاده کنی و نیاز به نوع فارسی نداشته باشید .
اگر سری به دیتابیس وردپرس بزنید دقیقا با این روش دیتابیس رو هندل کرده .
محمد نقلانی۰۷ اردیبهشت ۱۳۹۹، ۰۷:۳۱
تعریف collation به صورت utf8-general-ci برای ساخت دیتابیس بسته به کار شما خیلی مناسب هستش که به صورت پیفرش برای ستونها در نظر گرفته میشه ول اگر گزینه utf8-persian-ci رو انتخاب کنید برای تمام ستونها کاراکترهای فارسی و عربی رو هم اضافه میکنه که این میشه یک بار اضافه . پیشنهاد میشه شما پیفرض رو جنرال قرار بدید و فقط اون ستون هایی که قرار هست داخلش فارسی ذخیره بشه به صورت فارسی انتخاب بشه البته داخل جنرال تا حدودی همه کاراکترها پشتیبانی میشود . برای مثال شاید جایی نیاز باشه که شما فقط از حروف انگلیسی استفاده کنی و نیاز به نوع فارسی نداشته باشید .
اگر سری به دیتابیس وردپرس بزنید دقیقا با این روش دیتابیس رو هندل کرده .