2016-11-29 1 views
1

J'essaie de créer une base de données pour l'enregistrement d'utilisateur et de vouloir avoir une colonne avec la date d'enregistrement, qui devrait être l'heure actuelle par défaut. J'ai essayé d'exécuter cette requête:MariaDB CURRENT_TIMESTAMP par défaut

CREATE TABLE `users` (
    <some stuff> 
    `uRegDate` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP 
) 

Mais cela ne fonctionne pas avec MariaDB. Quelqu'un a une solution?

Répondre

4

si vous changez le type de données à TIMESTAMP au lieu de DATETIME comme

`uRegDate` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP 
+0

droit, 'CURRENT_TIMESTAMP' par défaut pour le type de' DateTime' est seulement disponible en 10.x Si vous utilisez 5.5, cela devrait être une colonne 'TIMESTAMP'. – elenst

0

J'utilise MariaDB 10.1.12 et votre déclaration fonctionne pour moi.

create table datetest (
date1 datetime default current_timestamp, 
date2 timestamp default current_timestamp); 
insert into datetest values (); 

Les déclarations ci-dessus execute sans aucune erreur et le résultat suivant est affiché

+---------------------+---------------------+ 
| date1    | date2    | 
+---------------------+---------------------+ 
| 2016-11-29 17:16:58 | 2016-11-29 17:16:58 | 
+---------------------+---------------------+