INDICE NAS TABELAS

MICHAELL 30/07/2014 10:00:27
#440025
Olá pessoal, tudo beleza?!
Galera, gostaria de saber a diferença em indexar um campo ou múltiplos campos.

por exemplo, tenho a tabela [TBVendas] com os campos (id_cliente, id_produto, id_vendedor, data, quant, valor)

para melhor resultado em consultas, devo indexar todos os campos que fazem ligação com alguma outra tabela certo?
devo indexar cada campo individualmente ou um único índice com vários campos?

exemplo:


  CREATE INDEX id_cliente ON TBVendas(id_cliente DESC);
CREATE INDEX id_produto ON TBVendas(id_produto DESC);
CREATE INDEX id_vendedor ON TBVendas(id_vendedor DESC);


ou


CREATE INDEX index_vendas ON TBVendas(id_cliente DESC, id_produto DESC, id_vendedor DESC);


qual das duas opções é o mais aconselhado?
utilizo banco access 2003

NETMANIA 30/07/2014 10:31:26
#440026
Resposta escolhida
MAICONJG, bom dia.

Isso varia conforme a necessidades das consultas que você usa em suas tabelas. Para determinar qual o melhor índice que você deve usar, só testando elas no seu banco e vendo o tempo que esta retorna os dados.

Tabelas que sofrem muitas alterações/exclusões, sofrem mais com a fragmentação dos índices.

Qual é o banco de dados que você está usando?

Otacílio
MICHAELL 30/07/2014 10:35:52
#440028
cara, utilizo access 2003.

queria saber a diferencia de indexar campos individualmente e indexar multiplos campos.

nao encontrei nenhum site que explique a diferença

NETMANIA 30/07/2014 11:34:49
#440032
Como eu falei, isso varia conforme o uso das suas consultas. O melhor jeito é tirar uma cópia do banco, e fazer testes para ver se você consegue uma performance melhor conforme os índices criados.
Tópico encerrado , respostas não são mais permitidas