ALBERGO 테이블에 데이터를 삽입하려고 하면 다음 오류 메시지가 나타납니다. "오류 코드: 1292. 잘못된 날짜 값: 행 1의 'data_apertura' 열에 대한 '01-05-2012'." 이 오류는 쿼리에 지정된 날짜 형식에 문제가 있음을 나타냅니다.
오류 코드 1292는 특히 잘못된 날짜 값과 관련이 있습니다. MySQL 문서에는 버전 5.7 이상에서는 '0000-00-00 00:00:00'과 같은 잘못된 날짜 값이 허용되지 않는다고 명시되어 있습니다.
이 오류를 해결하려면 MySQL 5.7 요구 사항을 준수하도록 날짜 형식을 수정해야 합니다. 문제는 날짜 값 '01-05-2012'가 예상되는 yyyy-mm-dd 형식이 아닌 dd/mm/yyyy 형식에 있다는 것입니다.
이 문제를 해결하려면 my.cnf 파일을 찾으세요. 일반적으로 /etc/mysql/my.cnf에 있습니다. Windows 사용자의 경우 일반적으로 C:ProgramDataMySQLMySQL Server 8.0my.ini에 있습니다.
파일을 편집하고 [mysqld] 섹션으로 이동합니다. 이 섹션에 다음 줄을 추가하세요.
sql_mode="NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
이 수정된 sql_mode를 사용하면 MySQL이 '01-05-2012'를 포함하여 이전에 유효하지 않았던 날짜 값을 허용할 수 있습니다.
변경 사항을 저장합니다. my.cnf 파일에 복사하고 운영 체제에 적합한 명령을 사용하여 MySQL 서비스를 다시 시작합니다(예: Linux의 경우 sudo service mysql restart).
수정된 sql_mode를 사용하면 이제 수정된 날짜 형식으로 삽입 쿼리를 실행할 수 있습니다.
INSERT INTO `PROGETTO`.`ALBERGO` (`ID`, `nome`, `viale`, `num_civico`, `data_apertura`, `data_chiusura`, `orario_apertura`, `orario_chiusura`, `posti_liberi`, `costo_intero`, `costo_ridotto`, `stelle`, `telefono`, `mail`, `web`, `Nome-paese`, `Comune`) VALUES (0, 'Hotel Centrale', 'Via Passo Rolle', '74', '2012-05-01', '2012-09-31', '06:30', '24:00', 80, 50, 25, 3, '43968083', '[email protected]', 'http://www.hcentrale.it/', 'Trento', 'TN');
이 수정된 쿼리는 이제 오류 코드 1292 없이 성공적으로 실행됩니다.
위 내용은 MySQL 오류 코드 1292: 잘못된 날짜 값이 나타나는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!