Неверное целочисленное значение: 'DEFAULT' для столбца 'student_id' в строке 1

Я получаю следующий код ошибки при попытке "Добавить нового студента" в программу-планировщик базы данных MySQL:

Неверный запрос:

INSERT INTO student(student_id, name, password, number_paid_lessons, paid_from_date, paid_until_date) VALUES('DEFAULT', 'Test Student', 'Test Password', 12, '2014-1-01', '2014-3-31')

Неверное целочисленное значение: 'DEFAULT' для столбца 'student_id' в строке 1

Технический персонал моей хостинговой компании объяснил: "Означает, что неверное значение mysql - DEFAULT в строке student_id".

Кодирование в php... Как исправить? Мне просто нужно изменить код страницы insert.php... или... код страницы student.php? Если так, то к чему?

3 ответа

Не проходи 'DEFAULT', Просто оставьте этот столбец вне списка столбцов и списка значений, и значение по умолчанию будет вставлено автоматически.

Предполагая ваш student_id В столбце задано значение по умолчанию, вам не нужно указывать его в запросе для применения значения по умолчанию.

INSERT INTO student(name, password, number_paid_lessons, paid_from_date, paid_until_date) 
VALUES('Test Student', 'Test Password', 12, '2014-1-01', '2014-3-31')

Если student_id является автоинкрементным полем, просто оставьте его пустым

INSERT INTO student(student_id, name, password, number_paid_lessons, paid_from_date, paid_until_date) 
VALUES('', 'Test Student', 'Test Password', 12, '2014-1-01', '2014-3-31')

Иначе, дайте номер вместо по умолчанию

INSERT INTO student(student_id, name, password, number_paid_lessons, paid_from_date, paid_until_date) 
VALUES(1, 'Test Student', 'Test Password', 12, '2014-1-01', '2014-3-31')
Другие вопросы по тегам