Baixe o app para aproveitar ainda mais
Prévia do material em texto
/* Modelagem básica - curso ENTIDADE=TABELA CAMPOS=ATRIBUTOS */ CLIENTE NOME - CARACTER(30) CPF - NUMERO(11) EMAIL - CARACTER(30) TELEFONE - CARACTER(30) ENDERECO - CARACTER(100) SEXO - CARACTER(1) /* Processos de modelagem */ /* FASE 01 E 02 - AD ADM DE DADOS */ MODELAGEM CONCEITUAL - RASCUNHO MODELAM LÓGICA - QUALQUER PROGRAMA DE MODELAGEM /*FASE 03 - DBA / AD */ MODELAGEM FÍSICA - SCRIPT DE BANCO /* INICIANDO A MODELAGEM FÍSICA*/ /* CRIANDO BANCO DE DADOS */ /* CREATE DATABASE EXEMPLO */ CREATE DATABASE PROJETO; /* CONECTANDO-SE AO BANCO */ USE PROJETO; /* CRIANDO A TABELA DE CLIENTES */ CREATE TABLE CLIENTE( NOME VARCHAR(30), SEXO CHAR(1), EMAIL VARCHAR(30), CPF INT(11), TELEFONE VARCHAR(30), ENDERECO VARCHAR(100) ); SELECT * FROM CLIENTE; /* VERIFICANDO AS TABELAS DO BANCO */ SHOW TABLES; USE EXEMPLO; /* DESCOBRINDO(EXIBINDO) COMO É A ESTRUTURA DE UMA TABELA */ DESC CLIENTE; /* SINTAXE BÁSICA DE INSERÇÃO */ INSERT INTO CIDADE /* SINTAXE BÁSICA DE INSERÇÃO - INSERT INTO TABELA... */ /* FORMA 01 - OMITINDOEX(CLUINDO)AS COLUNAS */ INSERT INTO CLIENTE VALUES('JOAO','M','JOAO@GMAIL.COM',988638273,'22923110','MAIA LACERDA - ESTACIO - RIO DE JANEIRO - RJ'); INSERT INTO CLIENTE VALUES('CELIA','F','CELIA@GMAIL.COM',541521456,'25078869','RIACHUELO - CENTRO - RIO DE JANEIRO - RJ'); INSERT INTO CLIENTE VALUES('JORGE','M',NULL,885755896,'58748895','OSCAR CURY - BOM RETIRO - PATOS DE MINAS - MG'); /* FORMA 02 - COLOCANDO AS COLUNAS */ INSERT INTO CLIENTE(NOME,SEXO,ENDERECO,TELEFONE,CPF) VALUES('LILIAN','F','SENADOR SOARES - TIJUCA - RIO DE JANEIRO - RJ','947785696',887774856); /* FORMA 03 - INSERT COMPACTO - SOMENTE MYSQL */ INSERT INTO CLIENTE VALUES('ANA','F','AMA@GLOBO.COM',85548962,'548556985','PRES ANTONIO CARLOS - CENTRO -SAO PAULO - SP'), ('CARLA','F','CARLA@TERATI.COM.BR',7745828,'66587458','SAMUEL SILVA - CENTRO -BELO HORIZONTE - MG'); INSERT INTO CLIENTE(NOME,SEXO,ENDERECO,TELEFONE,CPF) VALUES('CLARA','F','SENADOR SOARES - TIJUCA - RIO DE JANEIRO - RJ','883665843',99999999999); /* FILTRANDO DADOS COM WHERE E LIKE - aula 30/03 */ SELECT NOME, TELEFONE FROM CLIENTE; /* FILTRANDO */ SELECT NOME, SEXO FROM CLIENTE WHERE SEXO = 'M'; SELECT NOME, SEXO FROM CLIENTE WHERE SEXO = 'F'; SELECT NOME, ENDERECO FROM CLIENTE WHERE ENDERECO = 'RJ'; SELECT NOME, SEXO FROM CLIENTE WHERE ENDERECO = 'RJ'; /*UTILIZANDO O LIKE */ SELECT NOME, SEXO FROM CLIENTE WHERE ENDERECO = 'RJ'; /*CARACTER CORINGA % -> QUALQUER COISA*/ SELECT NOME, SEXO FROM CLIENTE WHERE ENDERECO = '%RJ'; SELECT NOME, SEXO, ENDERECO FROM CLIENTE WHERE ENDERECO = '%RJ'; /*RESOLVENDO O EXERCÍCIO */ CREATE DATABASE LIVRARIA; CREATE TABLE LIVROS( LIVRO VARCHAR(100), AUTOR VARCHAR(100), SEXO CHAR(1), PAGINAS INT(5), EDITORA VARCHAR(30), VALOR FLOAT(10,2), UF CHAR(2), ANO INT(4) ); INSERT INTO LIVROS VALUES('Cavaleiro Real', 'Ana Claudia', 'f', 465, 'Atlas', 49.9, 'RJ', 2009); INSERT INTO LIVROS VALUES('SQL para leigos', 'João Nunes', 'm', 459, 'Addison', 98.0, 'SP', 2018); INSERT INTO LIVROS VALUES('Receitas Caseiras', 'Celia Tavares', 'f', 210, 'Atlas', 45.0, 'RJ', 2008); INSERT INTO LIVROS VALUES('Pessoas Efetivas', 'Eduardo Santos', 'm', 390, 'Beta', 78.99, 'RJ', 2018); INSERT INTO LIVROS VALUES('Habitos Saudáveis', 'Eduardo Santos', 'm', 630, 'Beta', 150.98, 'RJ', 2019); INSERT INTO LIVROS VALUES('A casa Marrom', 'Hermes Macedo', 'm', 250, 'Bubba', 60.0, 'MG', 2016); INSERT INTO LIVROS VALUES('Estacio Querido', 'Geraldo Francisco', 'm', 310, 'Insignia', 100.0, 'ES', 2015); INSERT INTO LIVROS VALUES('Pra sempre amigas', 'Leda Silva', 'f', 510, 'Insignia', 78.98, 'ES', 2011); INSERT INTO LIVROS VALUES('Copas Inesqueciveis', 'Marco Alcantara', 'm', 200, 'Larson', 130.98, 'RJ', 2018); INSERT INTO LIVROS VALUES('O poder da mente', 'Clara Mafra', 'f', 120, 'Continental', 56.58, 'SP', 2017); /*1 - TRAZER TODOS OS DADOS*/ SELECT * FROM LIVROS; /*2 - TRAZER O NOME DO LIVRO E O NOME DA EDITORA*/ SELECT LIVRO, EDITORA FROM LIVROS; /*3 - TRAZER O NOME DO LIVRO E A UF DOS LIVROS PUBLICADOS POR AUTORES DO SEXO MASCULINO */ SELECT LIVRO, UF FROM LIVROS WHERE SEXO = 'M'; SELECT AUTOR, SEXO, LIVRO, UF FROM LIVROS WHERE SEXO = 'M'; /*4 - TRAZER O NOME DO LIVRO E O NÚMERO DE PÁGINAS DOS LIVROS PUBLICADOS POR AUTORES DO SEXO FEMININO */ SELECT LIVRO, PAGINAS FROM LIVROS WHERE SEXO = 'F'; SELECT AUTOR, LIVRO, PAGINAS FROM LIVROS WHERE SEXO = 'F'; /*5 - TRAZER OS VALORES DOS LIVROS DAS EDITORAS DE SÃO PAULO */ SELECT LIVRO, VALOR FROM LIVROS WHERE UF = 'SP'; SELECT UF, LIVRO, VALOR FROM LIVROS WHERE UF = 'SP'; /*6 - TRAZER OS DADOS DOS AUTORES DO SEXO MASCULINO QUE TIVERAM LIVROS PUBLICADOS POR SÃO PAULO OU RIO DE JANEIRO (QUESTÃO DESAFIO)*/ SELECT AUTOR, SEXO, UF FROM LIVROS WHERE SEXO = 'M' AND UF ='SP' OR UF = 'RJ'; SELECT AUTOR, SEXO, UF FROM LIVROS WHERE SEXO = 'M' AND UF ='SP' AND UF = 'RJ'; /* OPERADORES LÓGICOS OR -> PARA QUE A SAIDA DA QUERY SEJA VERDADEIRA, BASTA QUE APENAS UMA CONDIÇÃO SEJA VERDADEIRA. AND -> PARA QUE A SAIDA SEJA VERDADEIRA TODAS AS CONDIÇÕES PRECISAM SER VERDADEIRAS. */ /* OR - OU */ SELECT * FROM CLIENTE; SELECT NOME, SEXO, ENDERECO FROM CLIENTE WHERE SEXO = 'M' OR ENDERECO LIKE '%RJ'; SELECT NOME, SEXO, ENDERECO FROM CLIENTE WHERE SEXO = 'F' OR ENDERECO LIKE '%ESTACIO'; /* AND - E */ SELECT NOME, SEXO, ENDERECO FROM CLIENTE WHERE SEXO = 'M' AND ENDERECO LIKE '%RJ'; SELECT NOME, SEXO, ENDERECO FROM CLIENTE WHERE SEXO = 'F' AND ENDERECO LIKE '%ESTACIO'; /* COUNT(*), GROUP BY, PERFORMANCE COM OPERADORES LOGICOS */ /* CONTANDO OS REGISTROS DE UMA TABELA */ SELECT COUNT(*) FROM CLIENTE; /*MELHOR FORMA DE APRESENTAR*/ SELECT COUNT(*) AS "Quantidade de registros da tab. cliente" FROM CLIENTE; SELECT COUNT(*) FROM CLIENTE; /* OPERADOR GROUP BY */ SELECT SEXO, COUNT(*) FROM CLIENTE GROUP BY SEXO; /* PERFORMANCE EM OPERADORES LOGICOS */ /* 1 MILHAO DE REGISTROS PARA CONTAR SELECT COUNT(*) FROM CLIENTE; SELECT SEXO, COUNT(*) FROM CLIENTE GROUP BY SEXO; SELECT CIDADE, COUNT(*) FROM CLIENTE GROUP BY CIDADE; CONDICAO SEXO = F CIDADE = RIO DE JANEIRO SITUACAO - TRATANDO COM OU / OR 70% MULHERES = SEXO = F 30% MORA NO RIO DE JANEIRO SELECT NOME, SEXO, ENDERECO FROM CLIENTE WHERE SEXO = 'F' OR CIDADE = 'RIO DE JANEIRO'; SITUACAO - TRATANDO COM E / AND 70% MULHERES = SEXO = F 30% MORA NO RIO DE JANEIRO SELECT NOME, SEXO, ENDERECO FROM CLIENTE WHERE CIDADE = 'RIO DE JANEIRO' AND SEXO = 'F'; /*Explicações*/ /*CONSULTANDO A TABELA */ SELECT * FROM LIVROS; /* ACESSAR A DATABASE*/ /*VERIFICANDO OS BANCOS EXISTENTES*/ SHOW DATABASES; /*ACESSANDO O BANCO*/ USE PROJETO OU USE LIVRARIA; /*VERIFICANDO A TABELA */ SHOW TABLES; /*VER O BANCO QUE ESTÁ CONECTADO */ STATUS /* ALTERANDO OS CAMPOS NA TABELA UPDATE PRODUTOS SET NOME = 'ÁGUA MINERAL' WHERE CODIGO = 8 UPDATE PRODUTOS SET NOME = 'FILE DE FRANGO', PRECO = 8.7 WHERE CODIGO = 7 - ALTERANDO MAIS DE UM CAMPO UPDATE PRODUTOS SET PRECO = PRECO + 1 WHERE CODIGO IN (6, 7, 8) - ALTERANDO TRÊS VALORES AUMENTANDO EM 1 REAL */ /* EXERCÍCIO 14 e 15/04 CREATE DATABASE DB_SENAI USE DB_SENAI CREATE TABLE CLIENTES ( CODIGO INT, NOME VARCHAR(100) ) ALTER TABLE CLIENTES ADDEMAIL VARCHAR(50) ALTER TABLE CLIENTES DROP EMAIL ALTER TABLE CLIENTES MODIFY NOME VARCHAR(200) DROP TABLE CLIENTES DROP DATABASE DB_SENAI CREATE DATABASE DB_SENAI CREATE TABLE PRODUTOS ( CODIGO INT, NOME VARCHAR(100), PRECO DECIMAL(10,2) ) INSERT INTO PRODUTOS (CODIGO, NOME, PRECO) VALUES(1, 'CAFÉ', 3.9) SELECT * FROM PRODUTOS INSERT INTO PRODUTOS (CODIGO, NOME) VALUES(2, 'BATATA') SELECT * FROM PRODUTOS INSERT INTO PRODUTOS VALUES(3, 'ARROZ', 4.1) INSERT INTO PRODUTOS VALUES(4, 'AÇUCAR', 2.8) SELECT * FROM PRODUTOS INSERT INTO PRODUTOS VALUES(5, 'MACARRÃO', 1.7) INSERT INTO PRODUTOS VALUES(6, 'CARNE', 13.75) INSERT INTO PRODUTOS VALUES(7, 'FRANGO', 9.29) INSERT INTO PRODUTOS VALUES(8, 'ÁGUA', 5.6) INSERT INTO PRODUTOS VALUES(9, 'DETERGENTE', 1.29) INSERT INTO PRODUTOS VALUES(10, 'SABÃO EM PÓ', 2.7) INSERT INTO PRODUTOS VALUES(11, 'SAL', 0.95) INSERT INTO PRODUTOS VALUES(12, 'BALDE', 7.8) INSERT INTO PRODUTOS VALUES(13, 'REFRIGERANTE', 2.55) INSERT INTO PRODUTOS VALUES(14, 'SUCO 200ML', 1.0) INSERT INTO PRODUTOS VALUES(15, 'PÃO', 6.0) INSERT INTO PRODUTOS VALUES(16, 'BACON', 7.3) INSERT INTO PRODUTOS VALUES(17, 'CALABRESA', 8.75) INSERT INTO PRODUTOS VALUES(18, 'VASSOURA', 5.0) INSERT INTO PRODUTOS VALUES(19, 'LEITE EM PÓ', 2.99) INSERT INTO PRODUTOS VALUES(20, 'CERVEJA', 2.0) SELECT * FROM PRODUTOS UPDATE PRODUTOS SET NOME = 'ÁGUA MINERAL' WHERE CODIGO = 8 SELECT * FROM PRODUTOS UPDATE PRODUTOS SET NOME = 'FILÉ DE FRANGO', PRECO = 8.7 WHERE CODIGO = 7 SELECT * FROM PRODUTOS UPDATE PRODUTOS SET PRECO = PRECO + 1 WHERE CODIGO IN (6, 7, 8) SELECT * FROM PRODUTOS USE DB_SENAI DELETE FROM PRODUTOS WHERE CODIGO = 5 SELECT * FROM PRODUTOS DELETE FROM PRODUTOS WHERE CODIGO IN (6, 7, 8) DELETE FROM PRODUTOS WHERE PRECO <= 5.1 DELETE FROM PRODUTOS WHERE PRECO IS NULL SELECT * FROM PRODUTOS SELECT NOME, PRECO FROM PRODUTOS SELECT NOME, PRECO FROM PRODUTOS WHERE CODIGO = 15 SELECT NOME, PRECO FROM PRODUTOS WHERE CODIGO IN (15, 17) SELECT NOME, PRECO FROM PRODUTOS WHERE CODIGO NOT IN (15, 17, 99) SELECT CODIGO, NOME PRECO FROM PRODUTOS WHERE PRECO BETWEEN 3.7 AND 6.7 SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE 'PÃO' SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE 'BA%' SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE '%E' SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE '%A%' SELECT CODIGO, NOME, PRECO FROM PRODUTOS WHERE NOME LIKE '%AL%'
Compartilhar