Pesquisa de site

Instrução MySQL CREATE com palavra-chave KEY


Conforme declarado nos documentos oficiais:

KEY normalmente é sinônimo de INDEX. O atributo chave PRIMARY KEY também pode ser especificado apenas como KEY quando fornecido em uma definição de coluna. Isso foi implementado para compatibilidade com outros sistemas de banco de dados.

Vamos primeiro criar uma tabela:

mysql> create table DemoTable
(
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   Name varchar(50),
   Age int
);
Query OK, 0 rows affected (0.69 sec)

A seguir está a consulta para INDEX, que é sinônimo de KEY :

mysql> create index Name_Age_Index on DemoTable(Name,Age);
Query OK, 0 rows affected (0.65 sec)
Records: 0 Duplicates: 0 Warnings: 0

Vamos verificar a descrição da tabela mais uma vez:

mysql> desc DemoTable;

Isso produzirá a seguinte saída:

+-------+-------------+------+-----+---------+----------------+
| Field | Type        | Null | Key | Default | Extra          |
+-------+-------------+------+-----+---------+----------------+
| Id    | int(11)     | NO   | PRI | NULL    | auto_increment |
| Name  | varchar(50) | YES  | MUL | NULL    |                |
| Age   | int(11)     | YES  |     | NULL    |                |
+-------+-------------+------+-----+---------+----------------+
3 rows in set (0.01 sec)

Insira alguns registros na tabela usando o comando insert:

mysql> insert into DemoTable(Name,Age) values('Robert',21);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable(Name,Age) values('Bob',23);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable(Name,Age) values('David',22);
Query OK, 1 row affected (0.39 sec)

Exiba todos os registros da tabela usando a instrução select:

mysql> select *from DemoTable;

Isso produzirá a seguinte saída:

+----+--------+------+
| Id | Name   | Age  |
+----+--------+------+
|  2 | Bob    | 23   |
|  3 | David  | 22   |
|  1 | Robert | 21   |
+----+--------+------+
3 rows in set (0.00 sec)

Artigos relacionados: