Upraveno pro přehlednost
Podle specifikace SQL nemůže primární klíč obsahovat hodnotu NULL. To znamená, že zdobení sloupce pomocí „NOT NULL PRIMARY KEY“ nebo pouze „PRIMARY KEY“ by mělo dělat totéž. Ale spoléháte na to, že dotyčný SQL engine správně dodržuje SQL standard. Jako příklad z důvodu rané chyby SQL Lite neimplementuje správně standard a povoluje hodnoty null v neceločíselných primárních klíčích (viz sqlite.org/lang_createtable.html). To by pro (alespoň) SQLLite znamenalo, že dva příkazy dělají dvě různé věci.
Vzhledem k tomu, že „NOT NULL PRIMARY KEY“ jasně ukazuje záměr a nadále vyžaduje nenulové hodnoty, i když je primární klíč odstraněn, měla by to být preferovaná syntaxe.