..


Links Patrocinados

Utilização e gestão de colunas de identidade no SQL Server

Artigo escrito por Vincent Gaglio
Página 1 de 3

Ao projetar um banco de dados para suportar aplicações é essencial para considerar como lidar com chaves primárias. Há a este respeito, pelo menos, duas escolas de pensamento: uma que defende que a coisa certa a fazer é usar as teclas de chamada de aluguel (ou seja, não baseada em dados reais) e outra que afirma que deve ser usado em vez de dados reais como valores de chave. Então há um caminho do meio que consiste em "um banco de dados para uso dentro de ambas as soluções, dependendo da relação pros e contras (que em breve).

Ao projetar uma tabela que geralmente contém uma ou mais colunas que compõem a chave primária. Como sabemos chave primária de uma tabela é um valor (ou uma combinação de valores) que identifica exclusivamente cada linha. Como mencionado anteriormente, se a chave é composta de valores reais é chamado de chave natural, mas se, por exemplo, a chave é gerada toda vez que você inserir uma linha na tabela é chamado de chave substituta. A chave substituta é normalmente um valor numérico no SQL Server, e muitas vezes as colunas deste tipo são os de identidade, dos quais mais tarde.

Uma chave natural é composta de dados reais, ou seja, dados que têm uma relação com valores em outras colunas da linha (por exemplo, o código tributário de um indivíduo em uma tabela de clientes que também contém sua generalidade). Mesmo uma chave substituta identifica unicamente uma linha em uma tabela, mas seu valor não tem relação com outros valores da linha e é simplesmente gerado e armazenado.

Nós analisamos os prós e contras dos dois tipos de chaves que começam com o substituto:

O PRO

  • A chave substituta não tem relações com a linha de outros dados
  • Se você precisar fazer alterações no banco de dados referentes à actualização das chaves natural que pode ser feito facilmente, sem comprometer as relações de chave estrangeira, se este não se baseiam em chaves naturais, mas em um substituto
  • O chaves substitutas são geralmente valor inteiro e, portanto, necessitam de apenas quatro bytes para armazenar desta forma estruturas de tomada de índice menor desempenho (que tem um efeito positivo de operações de junção)

CONTRA A

  • Se as tabelas vinculadas na chave estrangeira com um substituto valor está ligado a uma tabela principal, para obter os valores reais de conexão entre as várias tabelas você deve se juntar operações
  • A chave substituta não é muito útil na busca de informações específicas, como os valores neles contidos não têm significado real

Que para as teclas naturais:

O PRO

  • Se prestam à investigação, porque os valores têm um significado real
  • Requer menos passos para obter os valores juntar-chave, porque eles estão contidos em todas as tabelas envolvidas na junta
  • Se prestam à investigação, porque os valores têm um significado real

CONTRA A

  • É atualização muito mais complicado, especialmente se as relações de chave estrangeira com outras tabelas são baseadas neles
  • Índices assumem maior porque chaves naturais tipicamente requerem mais bytes para armazenar
  • Junta-se com base em compostos chaves naturais (que muitas vezes incluem dados de string) são mais lentos do que aqueles feitos com chaves substitutas
Na mesma categoria ...
E-Learning
MS Access (Avançado) MS Access (Avançado)
Saiba como criar e gerenciar bancos de dados com rapidez e facilidade. A partir de 29 €.
MySQL (Curso) MySQL (Curso)
Gestão de banco de dados open-source. A partir de 39 €.
SQL e Banco de Dados (Curso) SQL e Banco de Dados (Curso)
Criar e gerenciar bancos de dados relacionais. A partir de 39 €.
Links Patrocinados