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 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 index
ON table (campo [ASC|DESC][, campo [ASC|DESC], ...])
[COM { PRIMÁRIO | NÃO PERMITIR NULO | IGNORAR NULO }]
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, use 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 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, 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.