MySQL -Change DB ، Tables to UTF8
سؤال
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';
لا تنتمي إلى StackOverflow