treinamento php módulo 2 php avançado waelson negreiros [email protected] waelson.com.br “está...
TRANSCRIPT
![Page 1: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/1.jpg)
Treinamento PHP
Módulo 2PHP Avançado
Waelson [email protected]
waelson.com.br“Está conosco o Senhor dos Exércitos”
![Page 2: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/2.jpg)
Agenda
MySQL Command Line O que é Banco de Dados? Projeto de Banco de Dados
![Page 3: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/3.jpg)
MySQL Command Line
![Page 4: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/4.jpg)
MySQL Command Line
O que é?Ferramenta de linha de comando Interface via shell
![Page 5: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/5.jpg)
MySQL Command Line
Como acessar?No menu executar digite:
cmdCom o prompt aberto digite:
mysql –u root –p
Assegure-se que os binários do MySQL estejamno path do DOS
![Page 6: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/6.jpg)
MySQL Command Line
![Page 7: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/7.jpg)
MySQL Command Line
Como proceder?Use o comando “show databases;”
para listar os bancos de dados existentes
Selecione um banco de dados, para isso use o comando “use <database>;”
Para verificar as tabelas digite “show tables;”
Faça uma consulta teste, digite: “select * from <tabela>;”
Para sair digite “quit”;
![Page 8: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/8.jpg)
MySQL Command Line
Obtendo mais ajudaDigite “help;”
![Page 9: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/9.jpg)
O que é Projeto de Banco?
![Page 10: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/10.jpg)
O que é Projeto de Banco?
Histórico Início da computação:
Dados guardados em arquivos de textoProblemas nesse modelo:
Redundância não-controlada de dados Aplicações devem se preocupar com a forma
de armazenamento dos dados Início dos anos 60:
Primeiros bancos de dados
![Page 11: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/11.jpg)
O que é Projeto de Banco?
Bancos de dados são conjuntos de dados integrados que tem por objetivo atender a uma comunidade de usuários
Redundância controladaDados armazenados de forma mais
consistenteGerenciamento facilitado
![Page 12: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/12.jpg)
O que é Projeto de Banco?
O que é um SGDB?SGBD: Sistema Gerenciador de Banco de
Dados
SGBD é um software que incorpora as funções de definição, recuperação e alteração de dados em um banco de dados
![Page 13: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/13.jpg)
O que é Projeto de Banco?
ExemplosMySQLOracleSQL ServerPostgresDB2SQLite
![Page 14: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/14.jpg)
O que é Projeto de Banco?
Banco de Dados x SGBDBanco de Dados: um modelo, uma abstraçãoSGBD: classe de softwares
![Page 15: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/15.jpg)
O que é Projeto de Banco?
O que é Modelo de Dados?Descrição formal da estrutura de um
banco de dados.
Exemplos: Modelos Navegacionais Modelo Orientado a Objetos Modelo Relacional (mais usado) Modelo de Entidades e Relacionamentos
(conceitual)
![Page 16: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/16.jpg)
Projeto de Banco de Dados
![Page 17: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/17.jpg)
Projeto de Banco de Dados
Atividade de modelagem de dados em vários níveis de abstração
Modelagem Conceitual (projeto conceitual)
Modelagem Lógica (projeto lógico)
Modelagem Física (implementação)
![Page 18: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/18.jpg)
Projeto de Banco de Dados
Modelagem ConceitualAbstração de mais alto nível
Objetivo: Representação dos requisitos de dados do domínio
Independente de modelo de banco de dados
![Page 19: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/19.jpg)
Projeto de Banco de Dados
Vantagens da Modelagem Conceitual Independente de detalhes de
implementação em um SGBD
Facilita a compreensão da semântica dos dados de um domínio
Melhor compreendido por usuários leigos
![Page 20: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/20.jpg)
Projeto de Banco de Dados
Modelagem LógicaRepresentação da modelagem
conceitual em um modelo
Ênfase na eficiência de armazenamento
Evitar: muitas tabelas (e junções); tabelas sub-utilizadas.
![Page 21: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/21.jpg)
Projeto de Banco de Dados
Modelagem FísicaEsquema SQL para a modelagem lógica
Dependente de SGBD
Ênfase na eficiência de acesso Implementação de consultas, índices,...
![Page 22: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/22.jpg)
Projeto de Banco de Dados
Modelo Entidade-RelacionamentoCriado por Peter Chen em 1976
Padrão de modelagem conceitual de BD
Um esquema conceitual de dados é também chamado de esquema ER ou diagrama ER
![Page 23: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/23.jpg)
Projeto de Banco de Dados
Conceitos do Modelo EREntidade
Abstração de um fato do mundo real para o qual se deseja manter seus dados no BD
Simbologia: retângulo nomeado
![Page 24: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/24.jpg)
Projeto de Banco de Dados
Conceitos do Modelo ERRelacionamento
Abstração de uma associação entre (ocorrências de) entidades
Simbologia: losango nomeado
![Page 25: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/25.jpg)
Projeto de Banco de Dados
Conceitos do Modelo ERRelacionamento
![Page 26: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/26.jpg)
Projeto de Banco de Dados
Conceitos do Modelo ERCardinalidade Máxima
Quantidade máxima de ocorrências de entidades que podem estar associadas a uma ocorrência de outra entidade (1 ou N)
![Page 27: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/27.jpg)
Projeto de Banco de Dados
Conceitos do Modelo ERCardinalidade Máxima
![Page 28: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/28.jpg)
Projeto de Banco de Dados
Conceitos do Modelo ERCardinalidade Mínima
Indica se a participação das ocorrências de entidades no relacionamento é obrigatória ou opcional
![Page 29: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/29.jpg)
Projeto de Banco de Dados
Conceitos do Modelo ERCardinalidade Mínima
![Page 30: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/30.jpg)
Projeto de Banco de Dados
Conceitos do Modelo ERAuto-Relacionamento
Representa uma associação entre ocorrências de uma mesma entidade
Exige a identificação de papéis
![Page 31: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/31.jpg)
Projeto de Banco de Dados
Conceitos do Modelo ERAuto-Relacionamento
![Page 32: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/32.jpg)
Projeto de Banco de Dados Conceitos do Modelo ER
Relacionamento “N”-ário Abstração de uma associação entre “N”
(ocorrências de) entidades Exemplo: relacionamento ternário
![Page 33: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/33.jpg)
Projeto de Banco de Dados Conceitos do Modelo ER
Atributo Abstração de uma propriedade de uma
entidade ou de um relacionamento
![Page 34: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/34.jpg)
Projeto de Banco de Dados Conceitos do Modelo ER
Classificação de Atributos obrigatórios X opcionais monovalorados X multivalorados simples X compostos
![Page 35: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/35.jpg)
Projeto de Banco de Dados Conceitos do Modelo ER
Identificação de Entidades Atributos identificadores distinguem
ocorrências de uma entidade umas das outras.
Garantem o acesso individualizado a uma ocorrência de entidade no BD
![Page 36: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/36.jpg)
Projeto de Banco de Dados Conceitos do Modelo ER
Identificação de Relacionamentos Um relacionamento é identificado
implicitamente pelo conjunto de identificadores das ocorrências de entidades que participam dele
![Page 37: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/37.jpg)
Projeto de Banco de Dados Conceitos do Modelo ER
Identificação de Relacionamentos Atributos identificadores adicionais podem
ser necessários para definir a identificação de um relacionamento
![Page 38: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/38.jpg)
Projeto de Banco de Dados Conceitos do Modelo ER
Restrições de Domínio O modelo ER não é capaz de expressar
todas as RIs de um domínio de aplicação Uma documentação em anexo pode ser
necessária
![Page 39: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/39.jpg)
Projeto de Banco de Dados Conceitos do Modelo ER
Restrições de Domínio
![Page 40: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/40.jpg)
Exercício I Administradora de Imóvel
Uma entrevista com o gerente da administradora resultou nas seguintes informações:
A administradora administra condomínios formados por unidades condominiais (lotes);
Cada unidade condominial é de propriedade de uma ou mais pessoas. Uma pessoa pode possuir diversas unidades;
Cada unidade pode estar alugada para no máximo uma pessoa. Uma pessoa pode alugar diversas unidades.
Defina os atributos que julgares necessário.
![Page 41: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/41.jpg)
Exercício II Administradora de Imóvel
Em uma clínica trabalham médicos e existem pacientes internados. Cada médico é identificado pelo seu CRM, possui um nome e recebe um salário na clínica. Um médico tem formação em diversas especialidades (ortopedia, traumatologia, etc), mas só exerce uma delas na clínica. Para todo paciente internado na clínica são cadastrados alguns dados pessoais: nome, RG, CPF, endereço, telefone(s) para contato e data do nascimento. Um paciente tem sempre um determinado médico como responsável (com um horário de visita diário predeterminado), porém vários outros médicos podem participar do seu tratamento. Pacientes estão sempre internados em quartos individuais, que são identificados por um número e ficam em um andar da clínica.
Defina os atributos que julgares necessário.
![Page 42: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/42.jpg)
Projeto de Banco de Dados Modelagem Lógica
Conceitos Chave-Primária:
Conjunto mínimo de um ou mais atributos e relacionamentos cujos valores servem para distinguir uma ocorrência da entidade das demais ocorrência da entidade das demais ocorrências da mesma entidade
Chave-Estrangeria conjunto de um ou mais atributos e relacionamentos
cujos valores aprecem necessariamente em outra entidade como chave-primária (Primary Key)
![Page 43: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/43.jpg)
Projeto de Banco de Dados Modelagem Conceitual
Relacionamento “um-para um”
![Page 44: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/44.jpg)
Projeto de Banco de Dados Modelagem Conceitual
Relacionamento “um-para-muitos”
![Page 45: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/45.jpg)
Projeto de Banco de Dados Modelagem Conceitual
Relacionamento “muitos-para-muitos”
![Page 46: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/46.jpg)
Projeto de Banco de Dados Modelagem Conceitual
Auto-Relacionamento “um-para-muitos”
![Page 47: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/47.jpg)
Projeto de Banco de Dados Modelagem Conceitual
Auto-Relacionamento “muitos-para-muitos”
![Page 48: Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros waelson@gmail.com waelson.com.br “Está conosco o Senhor dos Exércitos”](https://reader035.vdocuments.pub/reader035/viewer/2022062512/552fc15e497959413d8e543d/html5/thumbnails/48.jpg)
Bibliografia Melo, Tiago. Projeto de Banco de Dados, 2009 MySQL Dev, www.mysql.org IMasters, http://imasters.uol.com.br