В Mysql 5.1 имена таблиц выглядят как "# sql-44a5_1bc"? - PullRequest
0 голосов
/ 15 апреля 2011

У меня проблема с внешним ключом, которая не имеет абсолютно никакого смысла. Все обычные причины не могут решить проблему, и я в растерянности. Я думаю, что суть проблемы заключается в том, что одно из сообщений об ошибке сообщает о таблице «# sql-44a5_1bc». Кто нибудь знает что это? Что это создало? Это просто скрытое имя для реальной таблицы?

Вот и моя проблема с внешним ключом, если вы хотите помочь с этим. Это все еще не решено, и это большая проблема, потому что это находится в производственной базе данных:

Проблема с добавлением внешнего ключа с помощью Alter Table к существующей базе данных MYSQL - не удается добавить его! Помогите!

1 Ответ

2 голосов
/ 15 апреля 2011

Полагаю, это временная таблица, созданная во время ALTER TABLE. Я видел нечто подобное, когда пытался добавить ограничение fk в таблицу. Данные, представленные в таблице, нарушили ограничение, которое я пытался добавить, и в сообщении об ошибке упоминалось имя таблицы, похожее на упомянутое вами.

См. MySQL-Docs :

В большинстве случаев ALTER TABLE создает временную копию исходной таблицы. MySQL включает изменение в копию, затем удаляет исходную таблицу и переименовывает новую.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...