سؤال

In /etc/my.cnf the following has been added


character-set-server=utf8
collation-server=utf8_general_ci

ولكن بالنسبة لقاعدة البيانات والجداول التي تم إنشاؤها قبل إضافة ما سبق كيفية تحويل قاعدة البيانات والجداول إلى UTF8 مع إعدادات التجميع

هل كانت مفيدة؟

المحلول

حسنًا ، مجموعة أحرف قاعدة البيانات ومجموعة أحرف الجدول هي مجرد افتراضات (لا تؤثر على أي شيء مباشرة). ستحتاج إلى تعديل كل عمود إلى Charset المناسب. ستقوم PhpmyAdmin بذلك من أجلك (فقط قم بتحرير العمود ، ثم قم بتغيير مجموعة الأحرف). إذا كنت ترغب في القيام بـ RAW SQL ، فستحتاج إلى معرفة تعريف العمود (SHOW CREATE TABLE foo سوف تظهر لك التعريف). ثم ، يمكنك استخدام ALTER TABLE لتغيير التعريف.

لتغيير charset الافتراضي لجدول:

ALTER TABLE `tablename` DEFAULT CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';

لتغيير charset من عمود مع تعريف مجموعة الأحرف "Foo Varchar (128)" Foo "Collate 'Foo'``:

ALTER TABLE `tablename` MODIFY 
    `foo` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top