#php #mysql #cakephp
#php #mysql #cakephp
Вопрос:
мой запрос
INSERT INTO `messages_system(mes_id,mem_id,frm_id,subject,body,messages_system.type,new,folder,date,special,messages_system.read) VALUE('','51','48','title of the message','body of the message','message','new','sent','1305024405','','');`
этот запрос выдает ошибку
MySQL said:
#1366 - Incorrect integer value: '' for column 'mes_id' at row 1
Как я могу решить, что это mes_id
мой основной идентификатор.
Ответ №1:
Просто опустите mes_id
из ваших списков полей и значений:
INSERT INTO `messages_system` (mem_id,frm_id,subject,body,messages_system.type,new,folder,date,special,messages_system.read) VALUES ('51','48','title of the message','body of the message','message','new','sent','1305024405','','')
или инициализировать его литералом NULL
:
INSERT INTO `messages_system` (mes_id, mem_id,frm_id,subject,body,messages_system.type,new,folder,date,special,messages_system.read) VALUES (NULL, '51','48','title of the message','body of the message','message','new','sent','1305024405','','')
Ответ №2:
Установите для вашего столбца первичного ключа значение AUTO_INCREMENT.
Ответ №3:
Вам нужно установить auto_increment
атрибут для mes_id
и удалить mes_id
из вашего запроса.
Комментарии:
1. Затем опустите mes_id из вашего запроса, как предложил @Quassnoi.