logo

Prática SQL – Sintaxe, práticas e exemplos

Alunos,

abaixo a prática de banco de dados que estamos utilizando em nossas aulas. Sigam à risca!

Obs.: Depois eu organizo melhor estas informações.

———————————
CRIAR BASE DE DADOS

create database db_aula
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;
———————————
CRIAR TABELA

create table tb_alunos (
alunos_cod int(12) not null primary key auto_increment,
aluno_nome char(100) not null,
aluno_telefone char(16) null
);
———————————
MODIFICAR UM CAMPO EXISTENTE

Alter table tb_alunos CHANGE alunos_cod aluno_cod int(9) not null auto_increment

———————————
ADICIONAR UM CAMPO EM UMA TABELA EXISTENTE

alter table tb_alunos add aluno_email char(50) null after aluno_telefone
———————————
APAGAR UM CAMPO EM UMA TABELA

alter table tb_alunos drop aluno_email
———————————
ADICIONAR UM CAMPO EM UMA TABELA COM UM VALOR PRE-DEFINIDO

alter table tb_alunos add aluno_email char(50) default ‘a@b.com’
———————————
CRIAR UMA TABELA DEFININDO QUAL DATABASE SE DESEJA UTILIZAR

use db_aula;
create table tb_notas (
disciplina_cod int(9) not null auto_increment primary key,
disciplina_nome char(50) null,
disciplina_nota1 float(9) null default ‘0’,
disciplina_nota2 float(9) null default ‘0’,
disciplina_nota3 float(9) null default ‘0’,
disciplina_nota4 float(9) null default ‘0’
);
———————————
create table tb_responsaveis (
responsavel_cod int(9) not null auto_increment primary key,
responsavel_nome char(50) not null,
responsavel_alunocod int(9) not null
);
———————————
INSERT INTO tb_responsaveis (responsavel_cod,responsavel_nome,responsavel_alunocod)
VALUES
(”,’mamae josefa’,1),
(”,’papai claudio’,3),
(”,’titia marina’,5)

———————————
INSERIR VALORES NOS CAMPOS

INSERT INTO nome_tabela (lista-de-campos)
VALUES (lista_dados)

EXEMPLO:  

INSERT INTO tb_alunos (aluno_cod,aluno_nome,aluno_telefone,aluno_email)
VALUES
(”,’ana’,’1111-1111′,’ana@hotmail.com’),
(”,’joaquim silva’,’2222-3333′,’joaca@hotmail.com’),
(”,’jose’,’3333-4444′,’jose@hotmail.com’),
(”,’carlos’,’5555-6666′,’carlinho@hotmail.com’),
(”,’joaquim santos’,’9999-9999′,’jojojo@hotmail.com’)

———————————
APAGAR UMA TABELA DE UMA BASE DE DADOS EXISTENTE

use db_aula;
drop table tb_notas
———————————
FAZER PESQUISA NO BANCO DE DADOS

SELECT nome_dos_campos from nome_da_tabela where condicao (condicoes: > ou < ou >= ou <= ou = ou != ou between ou like ou in) exemplo: select aluno_cod,aluno_nome from tb_alunos where aluno_cod = 2 ou select aluno_cod,aluno_nome from tb_alunos where aluno_nome != 'joaquim' ou select * from tb_alunos where aluno_cod BETWEEN 1 AND 3 ou select * from tb_alunos where aluno_nome LIKE 'jo%' ou select * from tb_alunos where aluno_cod IN (1,3) ou select * from tb_alunos where aluno_nome IN ('ana','jose') ou select * from tb_alunos where aluno_nome = 'ana' or aluno_nome = 'jose' ou select * from tb_alunos where aluno_nome = 'joaquim silva' and aluno_cod = 2 ou select * from tb_alunos where aluno_nome = 'ana' or aluno_nome = 'jose' order by aluno_nome desc | asc ou SELECT * from tb_alunos limit 3     --------------------------------- ATUALIZAR VALORES NOS CAMPOS UPDATE nome_tabela SET CAMPO = 'novo_valor' WHERE CONDIÇÃO EXEMPLO: update tb_alunos set aluno_nome = 'carllos' where aluno_nome = 'carlos' --------------------------------- DELETE FROM nome_tabela WHERE condição EXEMPLO: delete from tb_alunos where aluno_nome = 'carllos' --------------------------------- LISTAR CAMPOS NAO REPETIDOS NA TABELA SELECT DISTINCT column_name,column_name FROM table_name; EXEMPLO: select distinct aluno_cod,aluno_nome,aluno_telefone,aluno_email from tb_alunos --------------------------------- Pesquisar e obter como resposta apenas uma quantidade "X" de registros select NOME_DOS_CAMPOS from NOME_DA_TABELA limit QUANTIDADE Exemplo: select * from tb_alunos limit 3 --------------------------------- CRIAR COPIA DA ESTRUTURA DE TABELA EXISTENTE create table nome_da_tabela_backup like nome_da_tabela_original EXMPLO: create table tb_alunosBKP like tb_alunos --------------------------------- COPIAR DADOS DE TABELA EXISTENTE PARA NOVA TABELA INSERT INTO nome_da_tabela_backup SELECT * FROM nome_da_tabela_original; EXEMPLO: INSERT INTO tb_alunosBKP SELECT * FROM tb_alunos; --------------------------------- JUNTAR TABELAS TEMPORARIAMENTE select NOME1_TABELA1.NOME1_CAMPO1,NOME2_TABELA2.NOME2_CAMPO2,... (Aqui liste os campso que serao migrados e unidos das tabelas) FROM TABELA1 INNER JOIN TABELA2 ON tabela1.coincidencia=tabela2,coincidencia EXEMPLO: SELECT tb_alunos.aluno_nome, tb_responsaveis.responsavel_nome FROM tb_alunos INNER JOIN tb_responsaveis ON tb_alunos.aluno_cod=tb_responsaveis.responsavel_alunocod; --------------------------------- JUNTAR TABELAS PERMANENTEMENTE EM OUTRA TABELA EXEMPLO: insert into tb_responsaveisalunos (aluno_nome,responsavel_nome) SELECT tb_alunos.aluno_nome, tb_responsaveis.responsavel_nome FROM tb_alunos INNER JOIN tb_responsaveis ON tb_alunos.alunos_cod=tb_responsaveis.responsavel_alunocod;