Eu sou novo nos DBMSs e ainda estou aprendendo a teoria.
Estou ficando realmente confuso com esse negócio importante e, depois de pesquisar no Google, reduzi-o para apenas 2 chaves que não recebo (chave primária e super chave).
Eu tenho algumas perguntas sobre DBMS. Ficaria muito grato se você puder respondê-las por mim.
1) Qual é a diferença entre Chave primária e Chave super no DBMS? Aprecio muito se você pode usar um exemplo abrangente para explicar corretamente
2) Tecla Can Primária e Super chave ambos têm várias colunas combinados para formar chave primária e chave Super?
3) A chave primária é um subconjunto da super chave ou vice-versa?
Respostas:
Uma Super Chave é simplesmente uma Chave Candidata não mínima , ou seja, uma com colunas adicionais que não são estritamente necessárias para garantir a exclusividade da linha.
Uma Chave Primária é uma Chave Candidata mínima , ou seja, todas as colunas constituintes são estritamente necessárias para garantir a exclusividade.
Como desenvolvedor / designer de banco de dados com 30 anos de experiência, eu nunca tinha ouvido o termo Super Key até ver essa pergunta e procurá-la. O conceito de Super Key parece mais pertinente ao tópico desempenho e design do esquema físico, pois é mapeado diretamente para o conceito de um índice não clusterizado exclusivo com colunas adicionais para melhor cobertura da consulta.
fonte
Super Chaves: Super chave significa superconjunto de uma tecla. Uma Super Chave é um conjunto de um ou mais atributos que são coletados e podem identificar todos os outros atributos exclusivamente.
Por exemplo, estamos tendo tabela
Portanto, nesta tabela, podemos ter
Como nossa chave Super. Cada super chave é capaz de identificar exclusivamente cada tupla (registro).
Chaves candidatas As chaves candidatas são uma super chave que não possui atributos redundantes. Em outras palavras, as chaves candidatas são super-chaves mínimas. Por exemplo, na ilustração acima
Essas duas chaves podem ser candidatas, pois as chaves restantes possuem atributos redundantes. Os meios no registro de super chave (BookId, BookName) podem ser identificados exclusivamente por apenas bookid e, portanto, Bookname é atributo redundante
Chave primária: é uma chave candidata escolhida pelo designer do banco de dados para identificar entidades em um conjunto de entidades. OU Uma chave usada para identificar exclusivamente cada registro é conhecida como chave primária.
Acima, as chaves candidatas podem ser a chave primária. E o outro que não foi escolhido como chave primária será conhecido como chave alternativa
fonte
alternative key
ésecondary key
que eles são os mesmos. Ótima resposta!A partir desta resposta stackoverflow.com minha :
A partir desta resposta stackoverflow.com, há uma tabela específica:
(Como eu comentei lá, "As quatro frases em negrito para FD, hold, superkey e CK seriam suficientes.")
(Uma tabela com uma CK vazia é restrita a conter no máximo uma linha. Um conjunto de colunas determinado pelo conjunto vazio é restrito a ter o mesmo valor de subrow em cada linha.)
fonte
Chave Uma chave é uma única ou combinação de vários campos. Seu objetivo é acessar ou recuperar linhas de dados da tabela de acordo com o requisito. As chaves são definidas em tabelas para acessar ou sequenciar os dados armazenados de forma rápida e suave. Eles também são usados para criar links entre diferentes tabelas.
Tipos de chaves As tabelas ou relações a seguir serão usadas para definir diferentes tipos de chaves.
Chave primária O atributo ou combinação de atributos que identifica exclusivamente uma linha ou registro em uma relação é conhecido como chave primária.
Chave secundária Um campo ou combinação de campos que é base para recuperação é conhecido como chave secundária. Chave secundária é um campo não exclusivo. Um valor-chave secundário pode se referir a muitos registros.
Chave candidata ou Chave alternativa Uma relação pode ter apenas uma chave primária. Pode conter muitos campos ou combinação de campos que podem ser usados como chave primária. Um campo ou combinação de campos é usado como chave primária. Os campos ou a combinação de campos que não são usados como chave primária são conhecidos como chave candidata ou chave alternativa.
Chave composta ou chave concatenada Uma chave primária que consiste em dois ou mais atributos é conhecida como chave composta.
Chave de classificação ou controle Um campo ou combinação de campos que é usado para sequenciar fisicamente os dados armazenados chamados chave de classificação. Também é conhecido como chave de controle.
Uma superchave é uma combinação de atributos que podem ser usados exclusivamente para identificar um registro do banco de dados. Uma tabela pode ter muitas superchaves. As chaves candidatas são um subconjunto especial de superchaves que não contêm informações estranhas.
Exemplo para super chave: imagine uma tabela com os campos Nome, Idade, SSN e <Extensão telefônica>. Esta tabela possui muitas superchaves possíveis. Três deles são SSN, extensão de telefone e nome. Entre as listadas, apenas o SSN é uma chave candidata, pois as outras contêm informações desnecessárias para identificar registros exclusivamente.
Chave estrangeira Uma chave estrangeira é um atributo ou combinação de atributos em uma relação cujo valor corresponde a uma chave primária em outra relação. A tabela na qual a chave estrangeira é criada é chamada de tabela dependente. A tabela à qual chave estrangeira se refere é conhecida como tabela pai.
para chave Super mínima, consulte este link, é mais claro lá http://www.answers.com/topic/superkey-1
fonte