Mysql
 sql >> Database >  >> RDS >> Mysql

INSERT data o ora corrente in MySQL

In primo luogo , dovresti avere una PRIMARY KEY nella tua tavola

Secondo , non hai impostato valori predefiniti per le colonne Date e Time . Inoltre, non puoi impostarli separatamente per il DATE e TIME tipi – dovresti usare TIMESTAMP digitare e DEFAULT CURRENT_TIMESTAMP come :

 CREATE TABLE Register (
    Name CHAR(20) PRIMARY KEY NOT NULL,
    Date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
 );

Terzo , se desideri utilizzare esattamente due colonne per la memorizzazione della data, puoi impostare un trigger su INSERT evento per questa tabella, come mostrato di seguito:

 CREATE TRIGGER default_date_time
 BEFORE INSERT ON my_table_name
 FOR EACH ROW
 BEGIN
    SET NEW.Date = CURDATE();
    SET NEW.Time = CURTIME();
 END;
 $$