0
PROGRAMAÇÃO PARA WEB www.php.net BANCO DE DADOS Aula 6 – 18/02/2009 Instrutor: Nelson Luis Rodrigues Pereira
<ul><li>Noções de Banco de Dados relacionais  </li></ul><ul><li>Noções de Modelos Entidade-Relacionamentos </li></ul><ul><...
BANCO DE DADOS RELACIONAIS <ul><li>Os Bancos de Dados Relacionais possuem vantagens significativas com relação a outros ti...
BANCO DE DADOS RELACIONAIS <ul><li>TABELAS: São agrupamentos de dados de objetos específicos. </li></ul><ul><li>COLUNAS: T...
BANCO DE DADOS RELACIONAIS <ul><li>RELACIONAMENTOS: São as relações existentes entre as tabelas de um banco e são determin...
DICAS PARA CONSTRUÇÃO DE BD <ul><li>Pense nos objetos do mundo real que você está modelando. </li></ul><ul><li>Evitar arma...
COMANDOS SQL <ul><li>CRIANDO BANCO DE DADOS:  </li></ul><ul><ul><li>Create database nomedodb; </li></ul></ul><ul><li>CRIAN...
COMANDOS SQL <ul><li>INSERINDO DADOS NA TABELA:  </li></ul><ul><ul><li>INSERT INTO tabelas (itens) VALUES (valores) </li><...
COMANDOS SQL <ul><li>ATUALIZANDO REGISTROS NUMA TABELA: </li></ul><ul><ul><li>UPDATE nomedatabela  </li></ul></ul><ul><ul>...
EXERCÍCIOS <ul><li>Crie um BD com nome Clinica </li></ul><ul><li>Crie as seguintes tabelas neste BD, considerando que os a...
EXERCÍCIOS <ul><li>Crie a coluna nroa (int) na tabela Funcionarios </li></ul><ul><li>Crie os seguintes índices: </li></ul>...
 
EXERCÍCIOS <ul><li>Realizar as seguintes atualizações no BD: </li></ul><ul><ul><li>O paciente Paulo mudou-se para Ilhota <...
Upcoming SlideShare
Loading in...5
×

Progweb Aula7

683

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
683
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
51
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "Progweb Aula7"

  1. 1. PROGRAMAÇÃO PARA WEB www.php.net BANCO DE DADOS Aula 6 – 18/02/2009 Instrutor: Nelson Luis Rodrigues Pereira
  2. 2. <ul><li>Noções de Banco de Dados relacionais  </li></ul><ul><li>Noções de Modelos Entidade-Relacionamentos </li></ul><ul><li>Comandos de SQL </li></ul><ul><li>Inserção </li></ul><ul><li>Consulta </li></ul><ul><li>Exclusão </li></ul><ul><li>Junção </li></ul><ul><li>Utilizando o PHPMyAdmin </li></ul><ul><li>Utilizando o MySQL Administrator e o MySQL Query </li></ul>Agenda
  3. 3. BANCO DE DADOS RELACIONAIS <ul><li>Os Bancos de Dados Relacionais possuem vantagens significativas com relação a outros tipos de armazenamento: </li></ul><ul><ul><li>Acesso mais rápido aos dados </li></ul></ul><ul><ul><li>Fácil consulta </li></ul></ul><ul><ul><li>Mecanismos pré-definidos para acesso concorrente </li></ul></ul><ul><ul><li>Acessos aleatórios aos dados </li></ul></ul><ul><ul><li>Sistemas de privilégio </li></ul></ul>
  4. 4. BANCO DE DADOS RELACIONAIS <ul><li>TABELAS: São agrupamentos de dados de objetos específicos. </li></ul><ul><li>COLUNAS: Tem um nome único, dados diferentes e tipos de dados associados a cada uma. </li></ul><ul><li>LINHAS: São registros que são inseridos na tabelas. </li></ul><ul><li>VALORES: São os valores de um registro para um coluna específica. </li></ul><ul><li>CHAVES: São os identificadores de um registro. Podemos ter uma chave primária (identificador único) e uma chave estrangeira (identifica o relacionamento entre tabelas). </li></ul>
  5. 5. BANCO DE DADOS RELACIONAIS <ul><li>RELACIONAMENTOS: São as relações existentes entre as tabelas de um banco e são determinados pela chave estrangeira. Podem ser: </li></ul><ul><ul><li>1 para 1: Um registro numa tabela possui um único registro associado a ela numa outra tabela e vice-versa. </li></ul></ul><ul><ul><li>1 para N: Um registro numa tabela possui um único registro associado a ela numa outra tabela, porém o registro da outra tabela pode conter vários outros associados a ele. </li></ul></ul><ul><ul><li>N para N: Um registro numa tabela possui vários registros associados a ela numa outra tabela e vice-versa. </li></ul></ul>
  6. 6. DICAS PARA CONSTRUÇÃO DE BD <ul><li>Pense nos objetos do mundo real que você está modelando. </li></ul><ul><li>Evitar armazenar dados redundantes. </li></ul><ul><li>Cada coluna deve armazenar apenas um valor </li></ul><ul><li>Escolha sempre chaves únicas. </li></ul><ul><li>Pense nas perguntas que deseja fazer ao BD. </li></ul><ul><li>Evite BD com muitos atributos vazios </li></ul>
  7. 7. COMANDOS SQL <ul><li>CRIANDO BANCO DE DADOS: </li></ul><ul><ul><li>Create database nomedodb; </li></ul></ul><ul><li>CRIANDO TABELAS: </li></ul><ul><ul><li>Create table pieces </li></ul></ul><ul><ul><li>( pieceid int unsigned not null auto_increment primary key, </li></ul></ul><ul><ul><li>name char(30) not null, </li></ul></ul><ul><ul><li>address char(40) not null, </li></ul></ul><ul><ul><li>city char(20) not null </li></ul></ul><ul><ul><li>); </li></ul></ul>
  8. 8. COMANDOS SQL <ul><li>INSERINDO DADOS NA TABELA: </li></ul><ul><ul><li>INSERT INTO tabelas (itens) VALUES (valores) </li></ul></ul><ul><li>RECUPERANDO DADOS: </li></ul><ul><ul><li>SELECT itens FROM tabelas </li></ul></ul><ul><ul><li>[ WHERE condicao ] </li></ul></ul><ul><ul><li>[ GROUP BY tipo_grupo ] </li></ul></ul><ul><ul><li>[ HAVING definicao_where ] </li></ul></ul><ul><ul><li>[ ORDER BY tipo_pedido ] </li></ul></ul><ul><ul><li>[ LIMIT criterios_de_limite ] </li></ul></ul>
  9. 9. COMANDOS SQL <ul><li>ATUALIZANDO REGISTROS NUMA TABELA: </li></ul><ul><ul><li>UPDATE nomedatabela </li></ul></ul><ul><ul><li>SET coluna1=expressao1, coluna2=expressao2, ... </li></ul></ul><ul><ul><li>[ WHERE condicao ] </li></ul></ul><ul><ul><li>[ LIMIT criterios_de_limite ] </li></ul></ul><ul><li>EXCLUINDO REGISTROS NUMA TABELA: </li></ul><ul><ul><li>DELETE FROM nomedatabela </li></ul></ul><ul><ul><li>[ WHERE condicao ] </li></ul></ul><ul><ul><li>[ LIMIT criterios_de_limite ] </li></ul></ul><ul><li>SAIBA MAIS: www.ansi.org e www.mysql.com </li></ul>
  10. 10. EXERCÍCIOS <ul><li>Crie um BD com nome Clinica </li></ul><ul><li>Crie as seguintes tabelas neste BD, considerando que os atributos sublinhados são chaves primárias e os em itálico são chaves estrangeiras: </li></ul><ul><ul><li>Ambulatorios: nroa (int), andar (numeric(3)) (não nulo), capacidade (smallint) </li></ul></ul><ul><ul><li>Medicos: codm (int), nome (varchar(40)) (não nulo), idade (smallint) (não nulo), especialidade (char(20)), CPF (numeric(11)) (único), cidade (varchar(30)), nroa (int) </li></ul></ul><ul><ul><li>Pacientes: codp (int), nome (varchar(40)) (não nulo), idade (smallint) (não nulo), cidade (char(30)), CPF (numeric(11)) (único), doenca (varchar(40)) (não nulo) </li></ul></ul><ul><ul><li>Funcionarios: codf (int), nome (varchar(40)) (não nulo), idade (smallint), CPF (numeric(11)) (único), cidade (varchar(30)), salario (numeric(10)), cargo (varchar(20)) 5. Consultas: codm (int), codp (int), data (date), hora (time) </li></ul></ul>
  11. 11. EXERCÍCIOS <ul><li>Crie a coluna nroa (int) na tabela Funcionarios </li></ul><ul><li>Crie os seguintes índices: </li></ul><ul><ul><li>Medicos: CPF (único), nroa </li></ul></ul><ul><ul><li>Pacientes: doenca </li></ul></ul><ul><li>Remover o índice doenca em Pacientes </li></ul><ul><li>Remover as colunas cargo e nroa da tabela de Funcionarios </li></ul><ul><li>Povoar as tabelas conforme o próximo Slide </li></ul>
  12. 13. EXERCÍCIOS <ul><li>Realizar as seguintes atualizações no BD: </li></ul><ul><ul><li>O paciente Paulo mudou-se para Ilhota </li></ul></ul><ul><ul><li>A consulta do médico 1 com o paciente 4 passou para às 12:00 horas do dia 4 de Julho de 2006 </li></ul></ul><ul><ul><li>A paciente Ana fez aniversário e sua doença agora é cancer </li></ul></ul><ul><ul><li>A consulta do médico Pedro com o paciente Carlos passou para uma hora e meia depois </li></ul></ul><ul><ul><li>O funcionário Carlos deixou a clínica </li></ul></ul><ul><ul><li>As consultas marcadas após as 19 horas foram canceladas </li></ul></ul><ul><ul><li>Os pacientes com câncer ou idade inferior a 10 anos deixaram a clínica </li></ul></ul><ul><ul><li>Os médicos que residem em Biguacu e Palhoca deixaram a clínica </li></ul></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×