Ответ 1
У меня была та же проблема. Мое решение: Измените имя таблицы в запросе create table, exequte и переименуйте таблицу.
Затем вы также можете удалить эту таблицу и после ее создания, не получив ошибки.
Я пытаюсь импортировать этот sql в мое имя базы данных symfony
CREATE TABLE IF NOT EXISTS ingredient (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
и я получаю
#1146 - Table 'symfony.ingredient' doesn't exist
Это кажется довольно странным, так как я пытаюсь здесь СОЗДАТЬ эту таблицу, поэтому... почему она не работает? У меня такая же проблема, если я попробую
CREATE TABLE symfony.ingredient
Или функция в symfony 2
c:\Dev\Symfony>php app/console doctrine:schema:create
PS: У меня есть эта проблема только с новой версией xampp.
ИЗМЕНИТЬ
Ну, мне почему-то удалось решить мою проблему. Я удалил свою базу данных, затем создал один (не с интерфейсом) и, наконец, отключил сервис mysql. Я не знаю, почему и как он отклеивает меня, но я надеюсь, что это поможет кому-то.
У меня была та же проблема. Мое решение: Измените имя таблицы в запросе create table, exequte и переименуйте таблицу.
Затем вы также можете удалить эту таблицу и после ее создания, не получив ошибки.
Что для меня работало:
.frm
. Для пустых таблиц отсутствуют файлы .MYD
и .MYI
..frm
.Старая версия xampp создала таблицы в MyISAM в новой версии как InnoDB!
У меня была такая же проблема. При создании таблицы я получил сообщение "сервер ушел", и после этого у меня на столе не было сообщений, но я не мог попытаться заново создать таблицу, потому что тогда у меня появилось сообщение о том, что оно существует. Я решил это, выполнив это в командной строке:
mysqlcheck --repair --all-databases -u root -p
Также не помешало бы перезапустить сервер mysql после этого, а на всякий случай.
Хм, вы уверены, что у вас есть база данных и имеют привилегии делать инструкции CREATE.
Если у вас есть phpmyadmin:
Чтобы проверить первую возможность, создайте новую (пустую) тестовую базу данных, щелкните ее в меню и затем нажмите кнопку SQL в верхней навигационной панели и скопируйте ее снова. Если это не работает, попробуйте второе.
Для второго вы можете нажать кнопку "домой", а затем перейти к "Привилегии". Если есть только две или три учетных записи, но все с привилегиями root, у вас есть привилегии делать CREATE. В противном случае вы можете проверить свою учетную запись и предоставить себе привилегии.
Если обе возможности не сработали, я тоже не знаю. Это сработало для меня: (
У меня была такая же проблема: # 1146 - Таблица "tutsplus_ci.posts" не существует. Я решил эту проблему следующим образом:
Я сделал экспорт инкриминированной таблицы в файл sql. Я заметил, что имя таблицы в файле .sql имеет супериментальное конечное пространство. Я вернусь к phpmyadmin в разделе "Операции" моей таблицы, и переименую таблицу из "posts" в "posts". После выполнения всех этих действий ошибка не появилась.
В заключение, действительно, столбец "сообщений" не существует, как сказано в сообщении об ошибке. Поскольку фактическое имя таблицы было "сообщениями", а не "сообщениями". Пространство перед именем трудно заметить в phpmyadmin. Это история. Ничего особенного. Я надеюсь, что это помогает!