-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcreate.sql
More file actions
78 lines (63 loc) · 2.26 KB
/
Copy pathcreate.sql
File metadata and controls
78 lines (63 loc) · 2.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
/*
Script destinado a criação de banco de dados e tabelas
*/
-- Criar banco de dados
CREATE DATABASE db_exemplo;
-- Criar banco de dados caso não exista (CONDIÇÃO)
CREATE DATABASE IF NOT EXISTS db_exemplo;
-- Usa banco de dados
USE db_exemplo;
-- Mostra os bancos de dados existentes
SHOW DATABASES;
-- Mostra as tabelas existentes
SHOW TABLES;
-- Mostra a estrutura de uma tabela
DESCRIBE nome_tabela;
-- Criar tabela com PRIMARY KEY, AUTO_INCREMENT e NOT NULL
CREATE TABLE tb_usuario (
id INT NOT NULL AUTO_INCREMENT, -- Chave primária, auto incremento, não nulo
nome VARCHAR(100) NOT NULL, -- Campo texto obrigatório
email VARCHAR(100) NOT NULL UNIQUE, -- Campo texto obrigatório e único
data_nascimento DATE, -- Campo data
PRIMARY KEY (id) -- Definir chave primária
);
-- Tipos de dados
/*
NUMÉRICOS: INT, FLOAT, DECIMAL
TEXTO: VARCHAR(), TEXT()
DATA: DATE, DATETIME, TIMESTAMP
BOOLEANO: BOOLEAN, TINYINT(1)
BINÁRIO: BLOB, BINARY
*/
-- Criação de tabela com uma chave estrengeira
CREATE TABLE tb_endereco_usuario (
id_endereco INT NOT NULL AUTO_INCREMENT,
logradouro VARCHAR(100) NOT NULL,
numero INT NOT NULL,
complemento VARCHAR(100),
bairro VARCHAR(100) NOT NULL,
cidade VARCHAR(100) NOT NULL,
estado VARCHAR(2) NOT NULL,
cep VARCHAR(8) NOT NULL,
PRIMARY KEY (id_endereco),
fk_tbl_cliente_id_cliente INT NOT NULL UNIQUE, -- Chave estrangeira para a tabela tb_usuario
CONSTRAINT fk_endereco_usuario_cliente -- Definir chave estrangeira
FOREIGN KEY (fk_tbl_cliente_id_cliente) -- Coluna que vai receber a chave estrangeira
REFERENCES tb_usuario (id) -- Tabela e coluna que vai receber a chave estrangeira
ON DELETE RESTRICT -- Não deletar a chave estrangeira
ON UPDATE CASCADE -- Atualizar a chave estrangeira
);
-- Atualizar tabela
UPDATE tb_usuario SET nome = 'Pedro' WHERE id = 1;
-- WHERE é super recomendado para evitar erros.
-- Deletar registros da tabela
DELETE FROM tb_usuario WHERE id = 1;
-- WHERE é super recomendado para evitar erros.
-- Deletar tabela
DROP TABLE tb_usuario;
-- Deletar banco de dados
DROP DATABASE db_exemplo;
-- Truncate (deletar todos os dados da tabela)
TRUNCATE TABLE tb_usuario;
-- Alterar estrutura da tabela
ALTER TABLE tb_usuario ADD COLUMN telefone VARCHAR(20);