Forse ho capito...
dicendo KM int(11) Sì NULL vuol dire:

KM nome del campo
int(11) è un tipo campo numerico intero lungo 11
Sì NULL permetti inserimento NULL, ovvero quando inserisci il valore non è obbligatorio
ma siccome è un campo numerico allora se non inserisci niente prende il valore di default specificato nel campo.. che di default [perdona il gioco di default] quando crei un campo numerico è 0...

Se invece il campo fosse un varchar senza valore di default per inserire NULL( come dici te ) potresti fare così:
Nell'istruzione di INSERT non dichiari il nome del campo e quindi neanche il suo valore (così prende il default cioè NULL)
oppure
Nell'istruzione di INSERT inserisci come valore NULL senza (non così: 'NULL' ma così: NULL)
Prova fammi sapere se ti va!
Ciao!