Som dokumenterats under Datatyps standardvärden:
Om kolumnen kan ta
NULLsom ett värde är kolumnen definierad med en explicitDEFAULT NULLklausul.
(Jag tror att de menade implicit , inte explicit ).
Dessutom, som dokumenterats under CREATE TABLE Syntax:
Om varken
NULLinte hellerNOT NULLanges, behandlas kolumnen som omNULLhade specificerats.
Därför är följande kolumndefinitioner i MySQL alla identiska:
columnname type
columnname type NULL
columnname type DEFAULT NULL
columnname type NULL DEFAULT NULL
Valet av vilken man ska använda är en balans mellan att vara tydlig och att vara kortfattad. Beroende på omständigheterna kan jag använda något av ovanstående.