Показать сообщение отдельно
Старый 08.03.2010, 19:17   #3
hex
Гость
 
Сообщений: n/a
По умолчанию Ошибки выполнения SQL запросов

Копипаст с прошлого форума, автора не упомню.

Error Code: 1064 - You have an error in your SQL syntax;
- Синтаксическая ошибка в запросе, обычно указывается где именно.

Error Code: 1054 - Unknown column 'ххххх' in 'field list'
- Неизвестное имя колонки в запросе в списке полей. Решение - сравните поля в запросе и в целевой таблице и исправьте запрос

Error Code: 1050 - Table 'ххххх' already exists
- Попытка создать уже имеющуюся таблицу. Таблицу в базе можно конечно удалить, но вы должны отдавать себе отчет в своих действиях. Совет - перед удалением существующей таблицы - ОБЯЗАТЕЛЬНО БЭКАП

Error Code: 1060 - Duplicate column name 'ххххх'
- Попытка добавить уже существующую колонку. Если вы делаете апдейт базы, значит , скорее всего в исполнении данного запроса нет необходимости

Error Code: 1146 - Table 'base_name.table_name' doesn't exist
- Таблица в базе с именем таким-то не существует. Вы должны создать пустую таблицу перед выполнением этого запроса.

Error Code: 1136 - Column count doesn't match value count at row 1
- Количество колонок в таблице не соответствует количеству переменных в запросе. Можно попытаться понять какая переменная отсутствует или лишняя в запросе, сравнив с уже имеющимися данными таблицы.

Error Code: 1062 - Duplicate entry 'ххххх' for key 1
- Попытка записать уже имеющееся значение в ключевую колонку. Измените значение переменной в запросе. Если необходимо выполнить несколько запросов по одной задаче в разные таблицы, вы должны записать одинаковые значения переменной везде где она существует во избежание потери линков.

1264 - out of range value for column
- Написано что значение превышает допустимый диапазон. Не надо в таблицу пихать значение 150116. Идем учить матчасть - там тип данных smallint
smallint[(m)] [unsigned] [zerofill]
Малое целое число. Диапазон со знаком от -32768 до 32767. Диапазон без знака от 0 до 65535.

[Err] [Imp] 1366 - Incorrect decimal value: '' for column 'cancraft' at row 1 - эта строка говорит о том, что ячейке `cancraft` не может быть присвоено пустое значение то есть она NOT NULL.
- Выхода два - изменить ручками дамп и везде, где эти значения пустые с помощью бубна и призвания бога баз данных, шаманством и подбором необходимых значений руками внести изменения в дамп и провести его.
Второй - проще. Убрать NOT NULL для столбца `cancraft` таблицы `characters`.

Error Code: 2006 - MySQL server has gone away
- При исполнении запроса потеряна связь с SQL сервером. Ошибка попадалась мне при работе в SqlYog при создании дампа таблицы (обычно большого размера) и последующей попытке залить его. Решение - создайте запрос со структурой таблицы отдельно и экспортируйте данные таблицы в отдельный файл. После этого создаете таблицу первым запросом, и импортируете файл с данными.
  Ответить с цитированием