1

Тема: Ошибка MySQL при переносе таблицы: #1075 - Incorrect table definition

Переношу сайт себе на локальный компьютер, программил не я. При переносе одной из таблиц появляется ошибка - #1075 - Incorrect table definition; There can only be one auto column and it must be defined as a key

Нифига не понимаю в базах, но перести очень надо. Объясните, что не так. Насколько понял причина в этом:

CREATE TABLE `md_content` (
`ID` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`Parent` INT( 11 ) NOT NULL DEFAULT '0',
`Level` INT( 11 ) NOT NULL DEFAULT '0',
`Name` VARCHAR( 50 ) NOT NULL ,
.................
................
...............
`Work` CHAR( 3 ) NOT NULL DEFAULT '000',
...............
...............
..............

Вроде как проблема именно в строке Work. Что именно не нравится?

2

Re: Ошибка MySQL при переносе таблицы: #1075 - Incorrect table definition

duremar
Правила читаем, в особенности путкт 5 (Называние топику следует давать такое, чтобы оно соответствовало теме  и отражало её суть) и больше их не нарушаем.

При переносе одной из таблиц появляется ошибка - #1075 - Incorrect table definition; There can only be one auto column and it must be defined as a key

MySQL-сервер сигналит тебе, что в таблице может быть только одно поле с атрибутом AUTO_INCREMENT, которое должно быть индексом. Например так:

CREATE TABLE `md_content` (
`ID` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
`Parent` INT( 11 ) NOT NULL DEFAULT '0',
`Level` INT( 11 ) NOT NULL DEFAULT '0',
`Name` VARCHAR( 50 ) NOT NULL ,
.................
................
...............
`Work` CHAR( 3 ) NOT NULL DEFAULT '000',
PRIMARY KEY  (`ID`)
);

Обрати внимание на следующие строки, которые в твоем случае являются ключевыми:
`ID` INT( 11 ) UNSIGNED NOT NULL AUTO_INCREMENT ,
PRIMARY KEY  (`ID`)

Нет неразрешимых проблем, есть неприятные решения. (Э. Борн)