>  기사  >  데이터 베이스  >  mysql datetime 오류가 발생하면 어떻게 해야 할까요?

mysql datetime 오류가 발생하면 어떻게 해야 할까요?

藏色散人
藏色散人원래의
2023-02-15 10:12:272380검색

mysql 날짜/시간 오류 해결 방법: 1. 날짜 시간을 타임스탬프 타임스탬프로 변경합니다. 2. MySQL을 더 높은 버전으로 업그레이드합니다. 3. "ALTER USER 'root'@'localhost' IDENTIFIED BY 'root1' PASSWORD EXPIRE NEVER; "를 실행합니다. 주문.

mysql datetime 오류가 발생하면 어떻게 해야 할까요?

이 튜토리얼의 운영 환경: Windows 10 시스템, MySQL 버전 8.0, Dell G3 컴퓨터.

mysql datetime 오류가 발생하면 어떻게 해야 하나요?

MySQL은 테이블을 생성할 때 날짜/시간 오류를 보고합니다.

학생 데이터베이스에 stu 테이블을 생성하고 다음 테이블 생성 문을 실행합니다.

CREATE TABLE stu (
  id int(12) NOT NULL AUTO_INCREMENT,
  name varchar(150) CHARACTER SET utf8 DEFAULT NULL,
  age int(20),
  createTime datetime DEFAULT CURRENT_TIMESTAMP,
  updateTime datetime DEFAULT CURRENT_TIMESTAMP,
  PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

'createTime'에 대한 잘못된 기본값 오류가 Baidu에서 인터넷에 보고되었습니다. 날짜 시간 설정은 MySQL5.6 이후에만 지원되며 날짜 시간을 타임스탬프 타임스탬프로 변경합니다.

다시 실행하면 잘못된 테이블 정의입니다. DEFAULT 또는 ON UPDATE 절에 CURRENT_TIMESTAMP가 있는 TIMESTAMP 열이 하나만 있을 수 있다는 오류가 보고됩니다. 이는 current_timestamp가 여러 타임스탬프에 설정되어 있기 때문입니다.

가장 좋은 해결책은 MySQL을 5.7, 8.0 등 상위 버전으로 업그레이드하는 것입니다. 공식 홈페이지에서 MySQL 버전 8.0을 다운로드한 후 설치가 완료되었고, Navicat을 사용하여 MySQL에 연결했더니 2059 오류가 발생했습니다. 8.0과 이전 버전의 암호화 규칙 불일치로 인해 발생한다고 합니다.

명령줄을 사용하여 MySQL 인터페이스에 들어가서 다음 명령을 입력하세요.

#注意:root1是连接数据库的密码,可以更改为自己想用的密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root1' PASSWORD EXPIRE NEVER; #修改数据库的加密规则 
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root1'; #更新一下localhost的密码 
FLUSH PRIVILEGES; #刷新权限

권장 학습: "MySQL 비디오 튜토리얼"

위 내용은 mysql datetime 오류가 발생하면 어떻게 해야 할까요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.