Você não precisa do
NOT NULL
. Está implícito quando você define a coluna PRIMARY KEYS
. Por documentação:Além disso,
serial
também implica NOT NULL
. Não é um tipo de dados em si, apenas uma conveniência de notação para integer NOT NULL
com uma sequência anexada. Portanto, esta é a sintaxe perfeita:
CREATE TABLE mytable (mytableid serial PRIMARY KEY);
Você não precisa colocar aspas duplas no nome da coluna, desde que não queira usar letras maiúsculas e minúsculas identificadores , palavras reservadas ou caracteres "ilegais". Eu aconselharia usar identificadores legais e minúsculos exclusivamente para tornar seu código menos propenso a erros (e sua vida mais simples).