Chave candidata
Uma chave candidata é um identificador único dentro de uma relação que garante que nenhuma tupla será duplicada. Vale ressaltar que uma chave candidata não necessariamente é uma chave primária: uma tupla pode ter várias chaves candidatas mas só uma chave primária. Nesse quesito, uma tupla de usuário onde existem os campos "ID","RG" e "CPF" tem uma chava primária (ID) e três chaves candidatas. Uma chave candidata pode ser formada por vários atributos.[1]
Chaves candidatas ocorrem quando em uma relação existe mais de uma combinação de atributos para a identificação única do registro.
Exemplo
[editar | editar código-fonte]Matrícula, CPF, RG, Título Eleitor
Leve em consideração a seguinte regra de negócio:
Para cada pedido pode existir um número infinito de itens, contudo o item não pode se repetir na lista de itens de um pedido. Caso haja mais de um item igual, a quantidade do mesmo deve ser alterada.
Agora considere o esquema abaixo:
- pedidos(codPedido, valorTotal) PK - codPedido
- itensPedido(codPedido, codItem, quant, valorUnit, codigoBarras) PK - codItem
Perceba que, na relação itensPedido, teremos:
- codPedido: Chave estrangeira, irá se repetir;
- codItem: Chave Primária, não irá se repetir;
- codigoBarras: Chave candidata, pois também não deverá se repetir;
codPedido | codItem | quant | valorUnit | codigoBarras |
---|---|---|---|---|
1 | 1 | 2 | 2,50 | 123 |
1 | 2 | 3 | 4,20 | 321 |
1 | 3 | 3 | 1,50 | 567 |
Ver também
[editar | editar código-fonte]- Modelo relacional (Banco de Dados)
- Relação (Matemática)
- Chave Primária
- Chave Estrangeira
- O Modelo Relacional - Macário, Carla; Baldo, Stefano;
- ↑ Macário, Baldo, Carla, Stefano. «O Modelo Relacional» (PDF). Consultado em 29 de outubro de 2019