A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros

Apresentações semelhantes


Apresentação em tema: "Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros"— Transcrição da apresentação:

1 Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros
waelson.com.br “Está conosco o Senhor dos Exércitos”

2 Agenda MySQL Command Line O que é Banco de Dados?
Projeto de Banco de Dados

3 MySQL Command Line

4 MySQL Command Line O que é? Ferramenta de linha de comando
Interface via shell

5 MySQL Command Line Como acessar? No menu executar digite:
cmd Com o prompt aberto digite: mysql –u root –p Assegure-se que os binários do MySQL estejam no path do DOS

6 MySQL Command Line

7 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”;

8 MySQL Command Line Obtendo mais ajuda Digite “help;”

9 O que é Projeto de Banco?

10 O que é Projeto de Banco? Histórico Início da computação:
Dados guardados em arquivos de texto Problemas 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

11 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 controlada Dados armazenados de forma mais consistente Gerenciamento facilitado

12 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

13 O que é Projeto de Banco? Exemplos MySQL Oracle SQL Server Postgres
DB2 SQLite

14 O que é Projeto de Banco? Banco de Dados x SGBD
Banco de Dados: um modelo, uma abstração SGBD: classe de softwares

15 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)

16 Projeto de Banco de Dados

17 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)

18 Projeto de Banco de Dados
Modelagem Conceitual Abstração de mais alto nível Objetivo: Representação dos requisitos de dados do domínio Independente de modelo de banco de dados

19 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

20 Projeto de Banco de Dados
Modelagem Lógica Representação da modelagem conceitual em um modelo Ênfase na eficiência de armazenamento Evitar: muitas tabelas (e junções); tabelas sub-utilizadas.

21 Projeto de Banco de Dados
Modelagem Física Esquema SQL para a modelagem lógica Dependente de SGBD Ênfase na eficiência de acesso Implementação de consultas, índices,...

22 Projeto de Banco de Dados
Modelo Entidade-Relacionamento Criado 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

23 Projeto de Banco de Dados
Conceitos do Modelo ER Entidade Abstração de um fato do mundo real para o qual se deseja manter seus dados no BD Simbologia: retângulo nomeado

24 Projeto de Banco de Dados
Conceitos do Modelo ER Relacionamento Abstração de uma associação entre (ocorrências de) entidades Simbologia: losango nomeado

25 Projeto de Banco de Dados
Conceitos do Modelo ER Relacionamento

26 Projeto de Banco de Dados
Conceitos do Modelo ER Cardinalidade Máxima Quantidade máxima de ocorrências de entidades que podem estar associadas a uma ocorrência de outra entidade (1 ou N)

27 Projeto de Banco de Dados
Conceitos do Modelo ER Cardinalidade Máxima

28 Projeto de Banco de Dados
Conceitos do Modelo ER Cardinalidade Mínima Indica se a participação das ocorrências de entidades no relacionamento é obrigatória ou opcional

29 Projeto de Banco de Dados
Conceitos do Modelo ER Cardinalidade Mínima

30 Projeto de Banco de Dados
Conceitos do Modelo ER Auto-Relacionamento Representa uma associação entre ocorrências de uma mesma entidade Exige a identificação de papéis

31 Projeto de Banco de Dados
Conceitos do Modelo ER Auto-Relacionamento

32 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

33 Projeto de Banco de Dados
Conceitos do Modelo ER Atributo Abstração de uma propriedade de uma entidade ou de um relacionamento

34 Projeto de Banco de Dados
Conceitos do Modelo ER Classificação de Atributos obrigatórios X opcionais monovalorados X multivalorados simples X compostos

35 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

36 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

37 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

38 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

39 Projeto de Banco de Dados
Conceitos do Modelo ER Restrições de Domínio

40 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.

41 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.

42 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)

43 Projeto de Banco de Dados
Modelagem Conceitual Relacionamento “um-para um”

44 Projeto de Banco de Dados
Modelagem Conceitual Relacionamento “um-para-muitos”

45 Projeto de Banco de Dados
Modelagem Conceitual Relacionamento “muitos-para-muitos”

46 Projeto de Banco de Dados
Modelagem Conceitual Auto-Relacionamento “um-para-muitos”

47 Projeto de Banco de Dados
Modelagem Conceitual Auto-Relacionamento “muitos-para-muitos”

48 Bibliografia Melo, Tiago. Projeto de Banco de Dados, 2009
MySQL Dev, IMasters,


Carregar ppt "Treinamento PHP Módulo 2 PHP Avançado Waelson Negreiros"

Apresentações semelhantes


Anúncios Google