Incorrect date value: '2024-11-22 00:53:14' for column 'enrollment_date' at row 1
CREATE TABLE ENROLLMENTS (
enrollment_id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
student_id INT NOT NULL,
course_id INT NOT NULL,
enrollment_date DATE NOT NULL,
FOREIGN KEY (student_id) REFERENCES STUDENTS(student_id),
FOREIGN KEY (course_id) REFERENCES COURSES(course_id)
);
INSERT INTO enrollments (student_id, course_id, enrollment_date)
VALUES (1, 1, NOW());
컬럼의 날짜 형식과 INSERT하려는 날짜형식이 맞지 않아 발생하는 문제이다.
DATE
: 'YYYY-MM-DD'DATETIME
: 'YYYY-MM-DD HH:MM:SS'TIMESTAMP
: 'YYYY-MM-DD HH:MM:SS'enrollment_date
의 형식은 DATE이므로 'YYYY-MM-DD'형식으로 INSERT해주어야 한다.
CURDATE()
: 현재 날짜를 YYYY-MM-DD
형식으로 반환NOW()
: 현재 날짜와 시간을 YYYY-MM-DD HH:MM:SS
형식으로 반환따라서, DATE
타입의 컬럼에는 NOW()
가 아닌 CURDATE()
를 사용해야 합니다.
INSERT INTO enrollments (student_id, course_id, enrollment_date)
VALUES (1, 1, CURDATE());