Я только что столкнулся с ошибкой в своем личном программном обеспечении CMS, где он сказал бы мне, что процесс сборки базы данных был завершен, но созданная таблица, состоящая только из поля "id". После некоторых проб и ошибок я попытался получить точный запрос, который он использовал и выполнил, и обнаружил, что проблема связана с ошибкой mysql "# 1060 - Дублировать имя столбца" имя ". Я переключил имя столбца, которое я пытался что-то еще, и он работал безупречно. Я уверен, что это не зарезервированное имя столбца, потому что оно используется как таковое на другой таблице в той же самой базе данных. Кто-нибудь еще сталкивался с такой проблемой?
Для зарезервированных имен вы можете писать с помощью `, например:
CREATE TABLE MyTbl (id INT, `name` VARCHAR(80), age INT);
И удалите свой второй столбец с именем name!
Вот как вы получите сообщение об ошибке #1060
с сообщением об ошибке.
mysql> CREATE TABLE MyTbl (id INT, name VARCHAR(80), age INT, name VARCHAR(80));
ERROR 1060 (42S21): Duplicate column name 'name'
Как вы можете видеть, имя столбца name
было использовано дважды.
(Несомненно, это не зарезервированное слово и, конечно же, оно могло работать в другой таблице, где оно имело место только один раз: -)