Non è necessario il NOT NULL
. È implicito quando si definisce la colonna PRIMARY KEYS
. Per documentazione:
Inoltre, serial
implica anche NOT NULL
. Non è un tipo di dati di per sé, solo una comodità di notazione per integer NOT NULL
con una sequenza allegata.
Quindi questa è la sintassi perfetta:
CREATE TABLE mytable (mytableid serial PRIMARY KEY);
Non è necessario citare due volte il nome della colonna purché non si desideri utilizzare maiuscole e minuscole identificatori , parole riservate o caratteri "illegali". Consiglierei di utilizzare identificatori legali e minuscoli esclusivamente per rendere il tuo codice meno soggetto a errori (e la tua vita più semplice).