let type=timestamp; --source include/type_hrtime.inc set time_zone='+03:00'; set timestamp=unix_timestamp('2011-01-01 01:01:01') + 0.123456; create table t1 (a timestamp(5) DEFAULT CURRENT_TIMESTAMP); # # CREATE ... DEFAULT NOW(X) # insert t1 values (); select * from t1; drop table t1; # # MDEV-438 Microseconds: Precision is ignored in CURRENT_TIMESTAMP(N) when it is given as a default column value # create or replace table t1 (a timestamp(5) default current_timestamp); show create table t1; create or replace table t1 (a timestamp(5) default current_timestamp()); show create table t1; create or replace table t1 (a timestamp(5) default current_timestamp(2)); show create table t1; insert t1 () values (); select * from t1; create or replace table t1 (a timestamp(5) default current_timestamp(5)); show create table t1; create or replace table t1 (a timestamp(5) default current_timestamp(6)); show create table t1; create or replace table t1 (a timestamp(5) on update current_timestamp); show create table t1; create or replace table t1 (a timestamp(5) on update current_timestamp()); show create table t1; --error ER_INVALID_ON_UPDATE create or replace table t1 (a timestamp(5) on update current_timestamp(3)); create or replace table t1 (a timestamp(5) on update current_timestamp(5)); show create table t1; create or replace table t1 (a timestamp(5) on update current_timestamp(6)); show create table t1; drop table t1;