Таблицы в моей базе данных, где есть несколько необычных букв чешского алфавита, таких как ěščřžýáíé, игнорируют мой запрос. Я думаю, что это можно решить с помощью CHARACTER SET utf8 COLLATE utf8_czech_ci, но, похоже, я не знаю, как его использовать. Я пытаюсь этот код, но наверняка есть некоторые проблемы:
mysql_query("CREATE TABLE `".$userreg."` CHARACTER SET utf8 COLLATE utf8_czech_ci(
id INT NOT NULL AUTO_INCREMENT,
PRIMARY KEY(id),
title VARCHAR(30),
rating_estimate INT)")
or die(mysql_error());
Я должен создать таблицу в коде PHP, потому что это зависит от других переменных. Браузер показывает: «У вас есть ошибка в вашем синтаксисе SQL; проверьте правильность синтаксиса в руководстве, соответствующем вашей версии сервера MySQL, для использования рядом с« id INT NOT NULL AUTO_INCREMENT, PRIMARY KEY (id), title VARCHAR (30), »в строка 2 «.
Есть идеи как починить?
CHARACTER SET utf8 COLLATE utf8_czech_ci
должен быть в конце CREATE
заявление после закрытия ‘)’
Ты можешь использовать mysql_set_charset()
mysql_set_charset('utf8');//or utf8_czech_ci
Или же:
mysql_query("SET character_set_results=utf8");
Вы также можете ALTER
ваш стол:
ALTER TABLE tbl_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
Тем не менее, предлагается увидеть Почему я не должен использовать функции mysql_ * в PHP?