Bom dia galera eestou desenvolvendo um programa para portaria de um condominio e tenho uma duvida em relação a criação das tabelas SQL, terei 3 principais tabelas
Pessoa tem
idpessoa
nome
rg
lote/empresa
Carro:
idcarro
idpessoa - relaciona com idpessoa da tabela pessoa
modelo
cor
placa
Vou relacionar todas essas tabelas por id pessoa como foreign key, a primeira duvida é a tabela registro
faço assim
Registro:
idregistro
idpessoa - relaciona com idpessoa da tabela pessoa
idcarro - relaciona com idcarro da tabela carro
entrada
saida
ou
Registro:
idregistro
entrada
saida
relaciona com idpessoa da tabela pessoa
nome
rg
lote
relaciona com idcarro da tabela carro
modelo
placa cor
Registro:
idregistro
idpessoa - relaciona com idpessoa da tabela pessoa
idcarro - relaciona com idcarro da tabela carro
entrada
saida
se eu estivesse desenvolvendo o seu sistema eu faria da forma citada acima, que pra mim é o correto.
Colocando idregistro, idpessoa , idcarro como chave primaria composta da tabela Registro, não podendo haver repetições.
2° duvida como consultarei os relacionamentos assim
tring busca = "select * from `portaria`.`pessoa`, `carro` where idpessoa =' 1';";
Statement st = con.createStatement();
ResultSet rs = st.executeQuery(busca);
ou
String busca = "select * from `portaria`.`pessoa` where idpessoa =' 1';";
String busca1 = "select * from `portaria`.`carro` where idpessoa =' 1';";
Statement st = con.createStatement();
Statement st1 = con.createStatement();
ResultSet rs = st.executeQuery(busca);
ResultSet rs1 = st1.executeQuery(busca1);
assim:
"select 'portaria'.'pessoa'.'nome'
, 'portaria'.'carro'.'placa'
, 'portaria'.'carro'.'modelo'
, 'portaria'.'carro'.'cor'
-- outros atributos que achar necessário
from 'portaria'.'carro'
, 'portaria'.'pessoa'
where 'portaria'.'carro'.'idcarro' = 'portaria'.'pessoa'.'idcarro'
and 'portaria'.'pessoa'.'idpessoa' = '1';"