DADOS
Antes de definir as colunas é preciso conhecer os tipos de dados que a mesma ira conter, pois sua indicação se dá após indicar o nome da coluna.
Tipos primitivos
0️⃣Numerico🔢
Inteiro
| Tipo | Descrição |
|---|---|
| TinyInt | max 3 bytes |
| SmallInt | |
| Int | |
| MediumInt | |
| BigInt |
Real
| Tipo | Descrição |
|---|
| Decimal |
| Float |
| Double |
| Real |
Lógico
| Tipo | Descrição |
|---|---|
| Bit | 0 | 1 |
| Boolean | true | false |
🖊️Literal📑
Caractere
| Tipo | Descrição |
|---|---|
| Char | Fixo preenche o resto com espaço |
| VarChar | Variante catacteres |
Coleção
| Tipo | Descrição |
|---|---|
| Enum | Valores pré definidos |
| Set |
Texto
| Tipo | Descrição |
|---|
| TinyText |
| Text |
| MediumText |
| LongText |
Binário
| Tipo | Descrição |
|---|
| TinyBlob |
| Blob |
| MediumBlob |
| LongBlob |
📅Temporal⌚
| Tipo | Descrição |
|---|---|
| Date | 1999-09-30 |
| DateTime | data e hora |
| TimeStamp | |
| Time | |
| Year |
📐Espacial🗜️
| Tipo | Descrição |
|---|
| Geometry |
| Point |
| Polygon |
| MultiPolygon |
Constraints
São restrições definidas ao final de colunas ou final de comando de criação de tabelas.
| Constraint | Função |
|---|---|
| NOT NULL | Não permite campo nulo |
| UNIQUE | Não permite valores iguais |
| UNSIGNED | Não permite sinais |
| CHECK | Condição verdadeira, regra de negocio. |
| AUTO_INCREMENT | auto atribui um valor |
| PRIMARY KEY | Indica chave primaria |
| FOREIGN KEY | Indica chave estrangeira |
Criação
Criar uma tabela utilize o comando:
CREATE TABLE nome
(
id int not null auto_increment,
caracteristica_0 varchar (40),
caracteristica_1 date,
caracteristica_3 enum ('x', 'y'),
caracteristica_4 int,
primary key (id),
foreign key (caracteristica_4) references outra_tabela(coluna_out_tabela)
) default charset = utf8;
Para verificar uma tabela antes de sua criação CREATE TABLE IF NOT EXISTS nome_tabela(...);
Exclusão
Para exclusão utilize:
DROP TABLE nome ;
O mesmo if exist serve para verificar uma tabela antes de sua exclusão DROP TABLE IF EXISTS nome_tabela;
Alterando
Tabela interira
Para renomear a tabela:
ALTER TABLE nome_tabela
RENAME TO novo_nome;
Coluna inteira
ALTER TABLE nome_tabela
ADD COLUMN nome_caracteristica varchar (9) AFTER caracteristica_0;
ALTER TABLE nome_tabela
DROP COLUMN nome_caracteristica;
Elemento da Coluna
Modificando propriedade dos atributos
ALTER TABLE nome_tabela
MODIFY COLUMN nome_coluna varchar (21) not null default '';
Para renomear a coluna utilize o comando
ALTER TABLE nome
CHANGE COLUMN nome_antigo nome_novo varchar (21) not null default '';
Comando de redefinição total, então se torna necessário reescrever os atributos da coluna.