2009-12-31 8 views
0

Я пытаюсь получить документ из Excel или OpenOffice, который содержит символы UTF 16 в MySQL, но я не могу найти лучший способ экспортировать документ, чтобы phpmyadmin прочитал его. Я могу экспортировать из NeoOffice как формат «unicode», но ближайшим вариантом в MySQL является ucs2. Когда я пробую этот формат, он просто вращается и думает. UTF8 не поддерживает все символы, которые мне нужны.Таблицы Unicode для MySQL

+0

Невозможно использовать 'LOAD DATA INFILE' cuz проблемы UTF16: http://dev.mysql.com/doc/refman/5.5/en/load-data.html –

ответ

1

UTF8 поддерживает все символы UTF16, это только то, что UTF16 загружает все в 2 байта, в то время как UTF8 может принимать до 4 байтов.

В настоящее время MySQL не поддерживает UTF16, поскольку код кодировки endianness не указан, поэтому правильность не может быть гарантирована в любое время. UTF16 был supposed to be supported for Mysql 6, но так как 6 был помещен на лед, я понятия не имею, что с ним произошло.

SQLite поддерживает UTF16 по умолчанию.

0

Сохранить как UTF-8. Если вы не можете сохранить как UTF-8 непосредственно из своего программного обеспечения Office (о, дорогой!), Загрузите его в Блокнот или аналогичный и сохраните как UTF-8.

Как UTF, UTF-8 и UTF-16 могут представлять собой полный диапазон всех символов Юникода. UTF-8 - разумное кодирование файлов на диске; UTF-16LE (или «Юникод», поскольку Windows очень ошибочно описывает это) на самом деле не так. UTF-16 может быть полезен для хранения в памяти, но MySQL не использует его. Придерживайтесь UTF-8 для хранилища MySQL.

Смежные вопросы