Quando si definisce un campo DATETIME o TIMESTAMP, non è necessario specificare la lunghezza.
Ecco a cosa si riferisce il messaggio di errore:
Un valore DATETIME o TIMESTAMP può includere una parte di secondi frazionari finali con una precisione fino a microsecondi (6 cifre)
MySQL consente frazioni di secondi per i valori TIME, DATETIME e TIMESTAMP, con una precisione fino a microsecondi (6 cifre). Per definire una colonna che includa una parte di secondi frazionari, utilizzare la sintassi nome_tipo(fsp), dove nome_tipo è ORA, DATETIME o TIMESTAMP e fsp è la precisione dei secondi frazionari. Ad esempio:
CREATE TABLE t1 (t TIME(3), dt DATETIME(6));
Estratto da Sintassi CREATE TABLE :
| TIME[(fsp)]
| TIMESTAMP[(fsp)]
| DATETIME[(fsp)]
Documentazione: