Maison > Article > base de données > Comment définir la valeur par défaut pour datetime dans Navicat
Lorsque vous utilisez navicat pour concevoir les champs de la table, vous pouvez définir des valeurs par défaut pour les champs. Cependant, les champs de type datetime ne peuvent pas être définis. Expliquons ce problème en détail pour tout le monde.
Tutoriel recommandé : Tutoriel d'introduction à la base de données MySQL
Parce que la valeur par défaut actuelle du champ MySQL ne fonctions de support, donc définir la valeur par défaut sous la forme create_time datetime default now() est impossible. Une alternative consiste à utiliser le type TIMESTAMP au lieu du type DATETIME.
Le type de colonne TIMESTAMP marque automatiquement les opérations INSERT ou UPDATE avec la date et l'heure actuelles. S'il existe plusieurs colonnes TIMESTAMP, seule la première est mise à jour automatiquement.
La mise à jour automatique de la première colonne TIMESTAMP se produit dans l'une des conditions suivantes :
1. La valeur de la colonne n'est pas explicitement spécifiée dans une instruction INSERT ou LOAD DATA INFILE.
2. Les valeurs des colonnes ne sont pas explicitement spécifiées dans une instruction UPDATE et certaines autres colonnes modifient les valeurs. (Notez qu'un UPDATE définissant une colonne sur une valeur qu'elle a déjà n'entraînera pas la mise à jour de la colonne TIMESTAMP, car si vous définissez une colonne sur sa valeur actuelle, MySQL ignore le changement pour des raisons d'efficacité.)
3 .Vous définissez explicitement la colonne TIMESTAMP sur NULL
4. Les colonnes TIMESTAMP autres que la première peuvent également être définies sur la date et l'heure actuelles, définissez simplement la colonne sur NULL ou NOW().
Sélectionnez donc le type de date comme horodatage et autorisez l'espace vide
CREATE TABLE test ( uname varchar(50) NOT NULL,updatetime timestamp NULL DEFAULTCURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Si vous souhaitez opérer sous navicat, définissez le champ sur horodatage, puis écrivez CURRENT_TIMESTAMP comme valeur par défaut
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!