Cria um índice novo ou uma tabela existente.
Nota: Para bases de dados que não sejam do Microsoft Access, o motor de base de dados do Microsoft Access não suporta a utilização de CREATE INDEX (exceto para criar um pseudo-índice numa tabela ligada de ODBC) ou qualquer uma das instruções DDL (Data Definition Language). Em alternativa, utilize o método DAO Create. Para obter mais informações, consulte a secção Observações.
Sintaxe
CREATE [ UNIQUE ] INDEX índice
ON tabela (campo [ASC|DESC][, campo [ASC|DESC], ...])
[WITH { PRIMARY | DISALLOW NULL | IGNORE NULL }]
A instrução CREATE INDEX tem estas partes:
Parte |
Descrição |
índice |
O nome do índice a ser criado. |
tabela |
O nome da tabela existente que irá conter o índice. |
campo |
O nome do campo ou campos a serem indexados. Para criar um índice de campo único, indique o nome do campo em parênteses, seguido do nome da tabela. Para criar um índice de múltiplos campos, indique o nome de cada campo a ser incluído no índice. Para criar índices descendentes, utilize a palavra reservada DESC, caso contrário, os índices são assumidos como ascendentes. |
Observações
Para proibir valores duplicados no campo ou campos indexados de registos diferentes, utilize a palavra reservada UNIQUE.
Na cláusula WITH opcional, pode impor regras de validação de dados. Pode:
-
Proibir entradas nulas no campo ou campos indexados de novos registos ao utilizar a opção DISALLOW NULL.
-
Impedir que os registos com o valor Null no campo ou campos indexados sejam incluídos no índice ao utilizar a opção IGNORE NULL.
-
Designar o campo ou campos indexados como a chave primária ao utilizar a palavra reservada PRIMARY. Isto implica que a chave seja exclusiva, pelo que pode omitir a palavra reservada UNIQUE.
Pode utilizar CREATE INDEX para criar um pseudo-índice numa tabela ligada numa origem de dados ODBC, tal como o Microsoft SQL Server, que ainda não tem um índice. Não precisa de permissão ou acesso ao servidor remoto para criar um pseudo-índice e a base de dados remota desconhece e não é afetada pelo pseudo-índice. Deve utilizar a mesma sintaxe para as tabelas ligadas e nativas. Criar um pseudo-índice numa tabela que normalmente seria só de leitura pode ser especialmente útil.
Também pode utilizar a instrução ALTER TABLE para adicionar um índice de campo único ou de múltiplos campos a uma tabela, e pode utilizar a instrução ALTER TABLE ou DROP para remover um índice criado com ALTER TABLE ou CREATE INDEX.
Nota: Não utilize a palavra reservada PRIMARY ao criar um novo índice numa tabela que já tem uma chave principal. Se o fizer, irá ocorrer um erro.