Como criar um índice em sql

Em qualquer banco de dados SQL, você precisa de uma forma rápida de acessar os registros de interesse. Digamos, por exemplo, que você quer olhar para todas as propostas de pessoas que afirmam ser seu irmão. Supondo que nenhum dos seus irmãos mudaram seus sobrenomes para fins teatrais, você pode isolar essas ofertas, baseando a sua recuperação no conteúdo do Último nome

campo, como mostra a seguinte consulta SQL adhoc:

SELECT * DE POWERWHERE LastName = `Marx` -

Essa estratégia pode não funcionar para as propostas apresentadas por meios-irmãos e irmãos-de-lei, então você precisa olhar para um campo diferente, como mostrado no exemplo a seguir:

SELECT * DE POWERWHERE HowKnown = `irmão-em-law`ORHowKnown = `meio-irmão` -

SQL varre a mesa uma linha de cada vez, à procura de entradas que satisfazem a ONDE condição cláusula. Se a tabela de PODER é grande (dezenas de milhares de registros), você pode acabar esperando um tempo. Você pode acelerar as coisas, aplicando índices para a mesa de POWER. (A índice é uma tabela de ponteiros. Cada linha nos pontos de índice para uma linha correspondente na tabela de dados.)

Você pode definir um índice para todas as diferentes maneiras que você pode querer acessar seus dados. Se você adicionar, alterar ou excluir linhas na tabela de dados, você não tem que re-ordenar a tabela - você só precisa atualizar os índices. Você pode atualizar um índice muito mais rápido do que você pode classificar uma tabela.

Depois de estabelecer um índice com a ordem desejada, você pode usar esse índice para acessar linhas na tabela de dados quase instantaneamente.

Porque o ProposalNumber campo é único e curto, usando esse campo é a maneira mais rápida de acessar um registro individual. Essas qualidades tornam ideal para uma chave primária. E porque chaves primárias são geralmente a maneira mais rápida para acessar os dados, a chave primária de toda e qualquer tabela deve sempre ser indexado- índices de acesso chaves primárias automaticamente. No entanto, você deve saber o ProposalNumber do registro que você deseja.

Você pode querer criar índices adicionais com base em outros campos, como a Último nome, Código postal, ou HowKnown. Para uma tabela que você índice em Último nome, após uma busca encontra a primeira linha contendo uma Último nome do Marx, a busca encontrou-los todos. As chaves de índice para todo o Marx linhas são armazenadas uma após a outra.

Você pode recuperar Chico, Groucho, Harpo, Zeppo, e Karl quase tão rápido quanto você pode obter os dados sobre Chico sozinho.

Índices adicionar sobrecarga para o sistema, o que retarda as operações. Você deve equilibrar este abrandamento contra a velocidade que você ganha, acessando registros através de um índice.



Aqui estão algumas dicas para escolher bons campos de indexação:

  • Indexar os campos você costuma usar para acessar registros é sempre uma boa idéia. Você pode rapidamente acessar os registros sem muita latência.

  • Não se preocupe em criar índices para campos que você Nunca utilizar as teclas como recuperação. Criando índices desnecessários é um desperdício de tempo e de espaço de memória, e você não ganha nada.

  • Não criar índices para campos que não diferenciam um registro de um monte de outros. Por exemplo, a BusinessOrCharity campo meramente divide os registros da tabela em duas categorias não faz um bom índice.

A eficácia de um índice varia a partir de uma aplicação para outra. Se você migrar um banco de dados a partir de uma plataforma para outra, os índices que deram o melhor desempenho no primeiro sistema pode não realizar o melhor na nova plataforma. Na verdade, o desempenho pode ser pior do que se não tivesse indexado o banco de dados em tudo.

Experimente vários esquemas de indexação para ver qual deles oferece o melhor desempenho global, e otimizar seus índices de modo que nem a velocidade de recuperação nem velocidade de atualização sofrem com a migração.

Para criar índices para a tabela de PODER, basta selecionar Sim para indexado no painel Propriedades do campo da janela de criação da tabela.

O acesso faz duas truques úteis automaticamente: Ele cria um índice para Código postal (Porque esse campo é usado frequentemente para recuperações) e indexa a chave primária. (Ah, o progresso. Conseguiu amá-la.)

Video: Como Fazer um Índice Automatico

Código postal não é uma chave primária e não é necessariamente Unique-o oposto é verdadeiro para ProposalNumber. Você já criou um índice para Último nome. Faça o mesmo para HowKnown porque ambos são susceptíveis de ser utilizados para recuperações.

Depois de criar todos os seus índices, não se esqueça de salvar a nova estrutura de tabela antes de o fechar.

Video: Índices - Fundamentos, Estruturas & Usabilidade (Parte 1)

Se você usar uma ferramenta RAD diferente do Microsoft Access, esta informação não se aplica a você. No entanto, o processo global é bastante similar.


Publicações relacionadas