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

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;
codPedidocodItemquantvalorUnit codigoBarras
1122,50 123
1234,20 321
1331,50 567

Ver também


  1. Macário, Baldo, Carla, Stefano. «O Modelo Relacional» (PDF). Consultado em 29 de outubro de 2019
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.