PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Chave estrangeira do tipo serial - certifique-se de sempre ser preenchida manualmente


Eu sugeriria:
CREATE TABLE country(
    country_id serial PRIMARY KEY
  , country    text NOT NULL
);

CREATE TABLE region(
    region_id  serial PRIMARY KEY
  , country_id int NOT NULL REFERENCES country
  , region     text NOT NULL
);
  • Não use nomes de casos CaMeL. Leia o manual sobre identificadores.
  • Use nomes próprios. Nunca id ou name , que não são descritivos.
  • O tipo subjacente de um serial é integer . Faça a coluna de referência integer .
    Devido à referência de chave estrangeira region.country_id só pode conter valores presentes em country.country_id (ou NULL ). Suas considerações sobre valores> 2^31 são desnecessárias.
  • Demonstrando sintaxe mais curta para definição de PK e FK (opcional). Leia o manual sobre CREATE TABLE .

Exemplo de código com mais conselhos: