Вопрос № 133054: Здравствуйте, уважаемые эксперты!
Хочу Вам задать наипростейший вопрос: как добавить в БД mysql новую запись?
Таблица следующая (называется Themes):
ID - int, auto_increment
name - varchar
Запрос для создания таблицы в п...
Вопрос № 133.054
Здравствуйте, уважаемые эксперты!
Хочу Вам задать наипростейший вопрос: как добавить в БД mysql новую запись?
Таблица следующая (называется Themes):
ID - int, auto_increment
name - varchar
Запрос для создания таблицы в приложении.
Проблема состоит в том, что не выполняется более одного запрос INSERT INTO themes (name) VALUES ('any name')
В phpMyadmin выдается ошибка "#1062 - Duplicate entry '0' for key 1 ".
То есть добавляется только запись с ID=0, а дальше не хочет...
С чем это связано никак не могу понять...
Установлен Денвер-3 2008-01-13 (разумеется, пробовал перезапускать - не помогает).
Раньше все работало... Ошибка, наверно, глупейшая...
Отвечает: Паутов Сегей Владимирович
Здравствуйте, Николай Владимирович / Н.В.!
это потому что, вы не указали AUTO_INCREMENT при создании самой таблицы, то что вы указали в параметре автоинкремента - это с какого значения будет происходить инкремент. Правильнее было бы создать таблицу следующим образом
CREATE TABLE `Themes` (
`id` INT( 10 ) NOT NULL AUTO_INCREMENT ,
`name` VARCHAR( 100 ) CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL ,
PRIMARY KEY ( `id` )
) TYPE = MYISAM CHARACTER SET cp1251 COLLATE cp1251_general_ci AUTO_INCREMENT=1;
Ответ отправил: Паутов Сегей Владимирович (статус: 2-ой класс)
Ответ отправлен: 20.04.2008, 00:59 Оценка за ответ: 5 Комментарий оценки: Спасибо огромное! Все заработало!
Не знаю даже как я ухитрился забыть установить тип поля AUTO_INCREMENT...