Sobre SQL (computação / bancos de dados):
Quando temos dois ou mais campos em uma tabela que, juntos, identificam seus registros exclusivamente, qual é a maneira correta de chamá-los? Chaves compostas ou compostas?
Vi na web os dois usos, por isso não tenho muita certeza.
database-design
terminology
igordcard
fonte
fonte
Respostas:
A chave composta e a chave composta descrevem uma chave candidata com mais de um atributo. De acordo com o Dicionário de Banco de Dados Relacional (CJDate), eles significam a mesma coisa.
Na modelagem de ER, o termo "chave composta" também tem um significado mais específico. Significa uma chave cujos atributos constituintes são referências a chaves em outras entidades - ou seja, uma chave composta forma um relacionamento de identificação. Para a maioria dos propósitos, esse não é um conceito especialmente útil ou importante; portanto, os termos composto / composto costumam ser tratados como intercambiáveis. Provavelmente, é melhor manter a "chave composta", a menos que você esteja se referindo especificamente ao conceito de modelagem de ER de uma chave composta.
fonte
Ainda não sei por que http://en.wikipedia.org/wiki/Compound_key não foi consultado. Ele afirma muito claramente (e está correto):
Uma chave composta é composta de elementos que podem ou não ser chaves estrangeiras. Exemplo: Em uma tabela de detalhes da Transação, a chave é (TransactionId, ItemNumber). Um detalhe da transação é uma subentidade de uma transação. TransactionId é uma chave estrangeira, referenciando a tabela Transações. O ItemNumber não é uma chave por si só. Ele identifica apenas um item exclusivamente no contexto de uma única transação.
Uma chave composta é uma chave pela qual qualquer parte da chave é uma chave estrangeira. Exemplo: em um sistema de reserva de hotel, uma reserva possui a chave composta (GuestId, HotelId, ArrivalDate). GuestId identifica um convidado e faz referência à tabela Convidados. HotelId identifica um hotel e faz referência à tabela de hotéis. ArrivalDate identifica uma data. Pode ou não haver uma tabela Datas que ela faça referência, mas identifica uma Entidade (uma Data) de qualquer maneira.
Também é digno de nota o fato: uma chave simples é uma chave composta de uma coluna, enquanto uma chave composta é composta de duas ou mais colunas.
fonte
Em inglês, são "chaves compostas". Por exemplo, dê uma olhada no site do MSDN (qualquer pesquisa que contenha "chave composta sql" será suficiente).
http://www.google.com/search?q=sql+composite+key+site:msdn.microsoft.com
Supondo que a pergunta se refira a bancos de dados relacionais, procurei uma definição "neutra" na Wikipedia :
fonte
Uma chave composta consiste em mais de um atributo para identificar exclusivamente uma ocorrência de entidade. Isso difere de uma chave composta, pois um ou mais dos atributos, que compõem a chave, não são chaves simples por si só.
Por exemplo, você tem um banco de dados que contém sua coleção de CDs. Uma das entidades é chamada de faixas, que contém detalhes das faixas em um CD. Esta possui uma chave composta do nome do CD, número da faixa.
fonte
Parece-me que uma chave composta é um superconjunto que inclui chaves compostas. Se aceitarmos que uma chave composta é feita com mais de um atributo (de qualquer tipo), e uma chave composta é feita com mais de uma chave simples. Uma chave composta é um tipo de chave composta com um significado mais específico, mas o termo chave "composta" é sempre apropriado para uso.
fonte