14
Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects www.cotiinformatica.com.br 1 Mysql - Banco de Dados de Médio de Porte, Toda Estrutura de Defesa (Fechar o Banco de Dados Garantindo a sua Segurança, DBA)) AD _ Administrador De Dados ... Projeto Conceitual --> Modelo Lógico --> Modelo Físico Entidade _ Tudo que tem uma representação no Mundo real, onde em banco seria uma tabela... https://www.mysql.com/

Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects 5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

  • Upload
    doannhi

  • View
    218

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 1

Mysql - Banco de Dados de Médio de Porte, Toda Estrutura de

Defesa (Fechar o Banco de Dados Garantindo a sua Segurança, DBA)) AD _ Administrador De Dados ... Projeto Conceitual --> Modelo Lógico --> Modelo Físico Entidade _ Tudo que tem uma representação no Mundo real, onde em banco seria uma tabela...

https://www.mysql.com/

Page 2: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 2

Observo Direitinho o Serviço antes de entrar no Mysql

Page 3: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 3

Services.msc

Irei Criar uma tabela Cliente ... Cliente idCliente _ numero (inteiro ou real) int ou double (INT ou double) nome _ texto (varchar(tamanho) ) _ 255 email _ texto (varchar) sexo _ texto (varhcar) valorMensalidade _ numero (double)

TELEFONE operadora tipo numero

Page 4: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 4

#comentario #criar um banco de dados no mysql #Primeiro Banco #Dentro do Banco é a tabela ... # a senha do MYSQL _ é coti #Somente os comandos #observar a hora select now(); +---------------------+ | now() | +---------------------+ | 2016-04-11 16:01:33 | +---------------------+

Page 5: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 5

#Quem sou (que usuário sou) #NO MYSQL O adm É CHAMADO DE ROOT (DBA) #CUIDADO SELECT USER(); --root@localhost +----------------+ | USER() | +----------------+ | root@localhost | +----------------+ #Qualquer tipo de calculo "" _ tituo da resposta select 10 * 20 "multiplicacao 10*20"; +---------------------+ | multiplicacao 10*20 | +---------------------+ | 200 | +---------------------+

#Primeiro eu drop para testar (Perigo jamais faça isso) #SOMENTE NA COTI #nao faça em casa jamais em banco de Produção #apago o banco chamado Aula1 drop database if exists aula1; #cria o banco (aula1) create database if not exists aula1; #Entro no Banco de dados # se Conecta no Banco de Dados use aula1; #Mostra as tabelas que possuo no banco ... show tables;

Page 6: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 6

# Tabela Cliente (Entidade Cliente) #Com 5 campos ... create table cliente( idCliente int primary key, nome varchar (35), email varchar (50), sexo varchar (1), valormensalidade double ); desc cliente; +-----------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra +-----------------+-------------+------+-----+---------+-------+ | idCliente | int(11) | NO | PRI | NULL | | nome | varchar(35) | YES | | NULL | | email | varchar(50) | YES | | NULL | | sexo | varchar(1) | YES | | NULL | | valormensalidade | double | YES | | NULL | |-----------------+-------------+------+-----+---------+-------+

Page 7: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 7

#irei inserir na tabela 3 valores # sempre aspas simples insert into cliente (email,idCliente,nome,sexo,valormensalidade) values ('[email protected]',10,'porfirio','m',200); #ou #Inserindo em uma Ordem Pré-definida insert into cliente values (20,'lu','[email protected]','f',300); insert into cliente values (30,'marcelo','[email protected]','m',500); insert into cliente values (40,'garra','[email protected]','m',580); insert into cliente values (50,'sergio','[email protected]','m',380); #Vamos ver o que acabamos de Inserir ... #Mostra todos os dados de Cliente #O COMANDO MAIS UTILIZADO DO MYSQL select * from cliente; mysql> select * from cliente; +--------------+--------------------+------+------------------+ | idCliente | nome | email | sexo | valormensalidade |---+----------+--------------------+------+------------------+ |10 | porfirio | [email protected] | m | 200 | |20 | lu | [email protected] | f | 300 | |30 | marcelo | [email protected] | m | 500 | |40 | garra | [email protected] | m | 580 | |50 | sergio | [email protected] | m | 380 | +---+----------+--------------------+------+------------------+

Page 8: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 8

#Mostrar os clientes do sexo feminino select * from cliente where sexo='f'; +-----------+------+--------------+------+------------------+ | idCliente | nome | email | sexo | valormensalidade | +-----------+------+--------------+------+------------------+ | 20 | lu | [email protected] | f | 300 | +-----------+------+--------------+------+------------------+

#Mostrar os clientes do sexo Masculino #Mostro os dados do cliente onde o sexo é igual='m' select * from cliente where sexo='m'; +-----------+----------+--------------------+------+------------| idCliente | nome | email | sexo | valormensalidade +-----------+----------+--------------------+------+------------| 10 | porfirio | [email protected] | m | 200 | | 30 | marcelo | [email protected] | m | 500 | | 40 | garra | [email protected] | m | 580 | | 50 | sergio | [email protected] | m | 380 | +-----------+----------+--------------------+------+------------ #A quantidade de clientes #Contagem dos DADOS da Tabela select count(*) "quantidade" from cliente; +------------+ | quantidade | +------------+ | 5 | +------------+ #limitando a quantidade de Dados select * from cliente limit 2; +-----------+----------+--------------------+------+------------ | idCliente | nome | email | sexo | valormensalidade +-----------+----------+--------------------+------+------------ | 10 | porfirio | [email protected] | m | 200 | | 20 | lu | [email protected] | f | 300 | +-----------+----------+--------------------+------+------------

Page 9: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 9

#Quero ver somente o nome,sexo do cliente de codigo 30 select nome,sexo from cliente where idCliente=30; +---------+------+ | nome | sexo | +---------+------+ | marcelo | m | +---------+------+ # Ordenando os dados ... (Ordenar pelo nome) #ascendente select * from cliente order by nome asc; +-----------+----------+--------------------+------+------------ | idCliente | nome | email | sexo | valormensalidade +-----------+----------+--------------------+------+------------ | 40 | garra | [email protected] | m | 580 | | 20 | lu | [email protected] | f | 300 | | 30 | marcelo | [email protected] | m | 500 | | 10 | porfirio | [email protected] | m | 200 | | 50 | sergio | [email protected] | m | 380 | +-----------+----------+--------------------+------+------------ #descendente select * from cliente order by 2 desc; +-----------+----------+--------------------+------+------------| idCliente | nome | email | sexo | valormensalidade +-----------+----------+--------------------+------+------------| 50 | sergio | [email protected] | m | 380 | | 10 | porfirio | [email protected] | m | 200 | | 30 | marcelo | [email protected] | m | 500 | | 20 | lu | [email protected] | f | 300 | | 40 | garra | [email protected] | m | 580 | +-----------+----------+--------------------+------+------------

Page 10: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 10

# Mostrar os clientes os valores da mensalidade da maior para menor # saber os 3 clientes que pagam mais ... # OS TRES ALUNOS QUE PAGAM MAIS CARO select * from cliente order by valormensalidade desc limit 3; +-----------+---------+-------------------+------+-------------- | idCliente | nome | email | sexo | valormensalidade | +-----------+---------+-------------------+------+-------------- | 40 | garra | [email protected] | m | 580 | | 30 | marcelo | [email protected] | m | 500 | | 50 | sergio | [email protected] | m | 380 | +-----------+---------+-------------------+------+--------------

#Buscar os 3 Campos de Maior Mensalidade #Funções de Total _ count, sum, avg (Mais Utilizados) # min e max _ 5 Mais utilizado ... # Somar a mensalidade sem Perguntas #Sum,count, avg, min, max select sum(valormensalidade) "soma" from cliente; +------+ | soma | +------+ | 1960 | +------+ #Menor mensalidade select min(valormensalidade) "menor" from cliente; +-------+ | menor | +-------+ | 200 | +-------+

Page 11: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 11

#Maior Mensalidade select max(valormensalidade) "maior" from cliente; +-------+ | maior | +-------+ | 580 | +-------+ # Mostrar a Maior mensalidade do sexo masculino #Total Perguntando _ Agrupar #Total com não total # Total com não total (Group by) #Total (valorMensalidade), não total aquilo select max(valormensalidade) "maior", sexo from cliente group by (sexo); +-------+------+ | maior | sexo | +-------+------+ | 300 | f | | 580 | m | +-------+------+ select max(valormensalidade) "maior", sexo from cliente where sexo='m' group by (sexo); +-------+------+ | maior | sexo | +-------+------+ | 580 | m | +-------+------+ # Soma a mensalidade do Sexo Masculino ? # Agrupar é sempre por quem eu não estou calculando # Nesse caso é o sexo

Page 12: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 12

select sum(valormensalidade) , sexo from cliente where sexo='m' group by (sexo); +-----------------------+------+ | sum(valormensalidade) | sexo | +-----------------------+------+ | 1660 | m | +-----------------------+------+ #Contar por sexo ... select count(*) "quantidade", sexo from cliente group by (sexo); +----------+------+ | count(*) | sexo | +----------+------+ | 1 | f | | 4 | m | +----------+------+ # Total com não total (que se duplica) sou obrigado a Agrupar ... # Mostrar a Tabela desc cliente; +------------------+-------------+------+-----+---------+------- | Field | Type | Null | Key | Default | Extra +------------------+-------------+------+-----+---------+------- | idCliente | int(11) | NO | PRI | NULL | | nome | varchar(35) | YES | | NULL | | email | varchar(50) | YES | | NULL | | sexo | varchar(1) | YES | | NULL | | valormensalidade | double | YES | | NULL | +------------------+-------------+------+-----+---------+------- --Tenho uma tabela que irei prender a cliente # A chave estrangeira OBserva A Chave Primária de Outra Tabela #Chave Estrangeira (É Uma Chave de Referência) #È para Servir de servir de relação (Relacionamento) #ID_CLIENTE RELAÇÃO (PORFIRIO)

Page 13: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 13

create table endereco( idEndereco int primary key, bairro varchar (35), cidade varchar (50), id_Cliente int, foreign key(id_cliente) references Cliente(idCliente)); desc endereco; +------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+-------------+------+-----+---------+-------+ | idEndereco | int(11) | NO | PRI | NULL | | | bairro | varchar(35) | YES | | NULL | | | cidade | varchar(50) | YES | | NULL | | | id_Cliente | int(11) | YES | MUL | NULL | | +------------+-------------+------+-----+---------+-------+

select * from cliente; +-----------+----------+--------------------+------+------------| idCliente | nome | email | sexo | valormensalidade | +-----------+----------+--------------------+------+------------| 10 | porfirio | [email protected] | m | 200 | | 20 | lu | [email protected] | f | 300 | | 30 | marcelo | [email protected] | m | 500 | | 40 | garra | [email protected] | m | 580 | | 50 | sergio | [email protected] | m | 380 | +-----------+----------+--------------------+------+------------ #Essa teoria È Chamada Chave Estrangeira (Último Numero) insert into cliente values (60,'belem','[email protected]','m',350); #Dados do Endereco #Insere oS DADOS DO ENDEREÇO insert into endereco values (1000,'tijuca','Rio de janeiro',40); insert into endereco values(1500,'Barra da tijuca','Rio de janeiro',10); insert into endereco values(2000,null,'Rio de janeiro',30); insert into endereco values(2500,'nova iguacu','Rio de janeiro',50); insert into endereco values(3000,'Leblon','Rio de janeiro',20); insert into endereco values(3500,'Recreio','Rio de janeiro',60);

Page 14: Modelagem de Banco de Dados 01 Prof. Edson Belém · Modelagem de Banco de Dados Prof. Edson Belém Aula 01 Insert, Selects  5 #Quem sou (que usuário sou) #NO MYSQL O adm É …

Modelagem de Banco de Dados Prof. Edson Belém

Aula

01

Insert, Selects

www.cotiinformatica.com.br 14

#Atualizar ... commit;