|
Spec-Zone .ru
спецификации, руководства, описания, API
|
CONVERT() обеспечивает
способ преобразовать данные между различными наборами символов. Синтаксис:
CONVERT(exprUSINGtranscoding_name)
В MySQL транскодирующие имена являются тем же самым как соответствующими именами набора символов.
Примеры:
SELECT CONVERT(_latin1'Müller' USING utf8);INSERT INTO utf8table (utf8column) SELECT CONVERT(latin1field USING utf8) FROM latin1table;
CONVERT(... USING ...)
реализуется согласно стандартной спецификации SQL.
Можно также использовать CAST()
преобразовать строку в различный набор символов. Синтаксис:
CAST(character_stringAScharacter_data_typeCHARACTER SETcharset_name)
Пример:
SELECT CAST(_latin1'test' AS CHAR CHARACTER SET utf8);
Если Вы используете CAST()
без определения CHARACTER SET, получающийся набор символов и сопоставление
определяются character_set_connection и collation_connection системные переменные. Если Вы используете CAST() с CHARACTER SET X, получающийся набор символов и сопоставление X и сопоставление значения по умолчанию X.
Вы не можете использовать a COLLATE пункт внутри a CONVERT() или CAST() вызовите, но можно использовать это снаружи. Например, CAST(... COLLATE ...) недопустимо, но CAST(...) COLLATE ... является законным:
SELECT CAST(_latin1'test' AS CHAR CHARACTER SET utf8) COLLATE utf8_bin;