Olá, novamente,
2016-03-02 9:52 GMT-04:00 Guimarães Faria Corcete DUTRA, Leandro < [email protected]>: > 2016-03-02 9:13 GMT-03:00 Andre Cavalcante <[email protected]>: > > Aprendiz > > ----------- > > id serial > > matricula varchar > > nome varchar > > Cada um é uma chave? Ou a chave são os dois atributos? > id é uma chave primária porque gerado automaticamente pelo banco - é só o id do objeto matricula é uma chave candidata (unique no banco) nome + nomePai + nomeMae é outra chave candidata (unique no banco) Mas note que isso é apenas para mater o banco estável e com integridade relacional. As verificações mesmo são feitas no modelo OO. > > > ItemHistorico > > ------------------ > > id serial {PK - cada item tem um número que o identifica unicamente. A > > chave candidata seria dahoraEvento+idAprendiz, obviamente por se tratar > de > > um evento discreto no tempo} > > Com uma chave natural de apenas dois atributos, eu pensaria seriamente > em simplificar o modelo eliminando a chave artificial. > Pensei nisso também, mas como tudo tem um id e a como parte da chave candidata em questão é uma data, deixei assim. > > > > Anexo > > -------- > > id serial {PK - cada anexo tem um id, sem grandes problemas aqui. Não há > > chave candidata (posso colocar até o mesmo arquivo várias vezes, mas o > > sistema não precisa verificar isso, cabendo ao operador saber o que está > > fazendo} > > Isso nunca dá certo. Mesmo que desse operacionalmente, indica um > problema mais grave de entendimento de modelo e de negócio. > Aí é que está, não tem tanta regra de negócio assim associado. É simplesmente um documento que é anexado a um item de histórico. Podem ser quantos o operador quiser (e.g. scanner .jpg de RG, CPF ou outro doc). É só um repositório para cada item, daí a FK com id de ItemHistorico > > De qualquer maneira, tens outras questões específicas sobre teu modelo > proposto? Ou o que queres são comentários de base como os que fiz até > agora. > Então, como coloquei na 1ª postagem: 1. Alguém teria alguma outra ideia de fazer esse controle de documentos? 2. No modelo proposto, como fazer a SQL que retorne todos o documentos entregues por um aprendiz? Abraços e muito obrigado pela paciência. André Cavalcante Manaus, AM.
_______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
