Olá pessoal tudo bem.
Bem estou criando um banco de dados em Postgres, e tenho dúvidas se minhas tabelas estão relacionadas corretamente.
Nesse banco irei gerenciar armas de fogo.
Onde tenho as tabelas: marca_arma, modelo_arma, calibre_arma, tipo_arma e tipo_marca
Aí eu relacionei dessa forma:
create table marca_arma(id serial,
marca_arma varchar(50),
primary key (id));
create table tipo_arma(id serial,
tipo_arma varchar(50),
primary key (id));
create table tipo_marca(id serial,
tipo_id int,
marca_id int,
primary key (id),
foreign key (tipo_id)references tipo_arma(id),
foreign key (marca_id)references marca_arma(id));
create table calibre_arma(id serial,
calibre_arma char(6),
primary key (id));
create table modelo_arma(id serial,
modelo_arma varchar(50),
calibre_id int,
marca_id int,
primary key (id),
foreign key (calibre_id)references calibre_arma(id),
foreign key (marca_id)references marca_arma(id));
Não se esta correto dessa forma, e como eu devo proceder para buscar em uma listagem por exemplo: Tipo - Marca - Modelo - Calibre
Obrigado a todos do fórum desde já pessoal.