Maison > base de données > tutoriel mysql > Que faire si une erreur datetime mysql se produit

Que faire si une erreur datetime mysql se produit

藏色散人
Libérer: 2023-02-15 10:12:27
original
2434 Les gens l'ont consulté

Solution à l'erreur datetime mysql : 1. Remplacez datetime par timestamp timestamp ; 2. Mettez à niveau MySQL vers une version supérieure ; 3. Exécutez "ALTER USER 'root'@'localhost' IDENTIFIED BY 'root1' PASSWORD EXPIRE JAMAIS ; "Donnez simplement la commande.

Que faire si une erreur datetime mysql se produit

L'environnement d'exploitation de ce tutoriel : système Windows 10, MySQL version 8.0, ordinateur Dell G3.

Que dois-je faire si une erreur datetime mysql se produit ?

MySQL signale une erreur datetime lors de la création d'une table

Créez la table stu dans la base de données des étudiants et exécutez l'instruction de création de table suivante

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;
Copier après la connexion

Une valeur par défaut non valide pour l'erreur 'createTime' est signalée par Baidu sur Internet. Le paramètre datetime n'est pris en charge qu'après la valeur MySQL5.6, puis remplacez datetime par timestamp timestamp.

Lors de l'exécution à nouveau, l'erreur Définition de table incorrecte ; il ne peut y avoir qu'une seule colonne TIMESTAMP avec CURRENT_TIMESTAMP dans la clause DEFAULT ou ON UPDATE est signalée. Cela est dû au fait que current_timestamp est défini pour plusieurs horodatages.

La meilleure solution est de mettre à niveau MySQL vers une version supérieure, telle que 5.7, 8.0. Après avoir téléchargé la version 8.0 de MySQL depuis le site officiel, l'installation a été terminée et j'ai utilisé Navicat pour me connecter à MySQL et j'ai signalé une erreur 2059. Cela serait dû à l’incohérence entre les règles de cryptage entre la version 8.0 et les versions précédentes.

Utilisez la ligne de commande pour accéder à l'interface MySQL et saisissez la commande suivante

#注意: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; #刷新权限
Copier après la connexion

Apprentissage recommandé : "Tutoriel vidéo MySQL"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal