Na verdade, não há tipo de dados
serial
. É apenas uma notação abreviada para um valor padrão preenchido a partir da sequência (consulte o manual
para detalhes), essencialmente o que você tem agora. A única diferença entre sua configuração e uma coluna definida como
serial
é que existe um link entre a sequência e a coluna, que você também pode definir manualmente:alter sequence seq_gcompany_id owned by company.companyid;
Com esse link, você não pode mais distinguir sua coluna de uma coluna inicialmente definida como
serial
. O que essa mudança faz é que a sequência será automaticamente descartada se a tabela (ou a coluna) que a usa for descartada.