Buscar

aula_16-17_bd_IESB_2013_1_sul_2

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 19 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1
11
Disciplina Banco de Dados (BD)Disciplina Banco de Dados (BD)
1616ªª -- 1717ªª Aulas Aulas -- Integridade I Integridade I -- Integridade de identidadeIntegridade de identidade2013/1 2013/1 -- CCON4A CCON4A -- ENGN6CENGN6C
IESB SulIESB Sul
2
Planejamento - BD I - 2013/1 - (previsão)
D S T Q Q S S D S T Q Q S S
1 2 1
3 4 5 6 7 8 9 2 3 4 5 6 7 8
10 11 12 13 14 15 16 9 10 11 12 13 14 15
17 18 19 20 21 22 23 16 17 18 19 20 21 22
24 25 26 27 28 23 24 25 26 27 28 29
30
D S T Q Q S S D S T Q Q S S
1 2 1 2 3 4 5 6
3 4 5 6 7 8 9 7 8 9 10 11 12 13
10 11 12 13 14 15 16 14 15 16 17 18 19 20
17 18 19 20 21 22 23 21 22 23 24 25 26 27
24 25 26 27 28 29 30 28 29 30 31
31
D S T Q Q S S
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
D S T Q Q S S
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
FEVEREIRO
MARÇO
ABRIL
MAIO
JUNHO
JULHO
LEGENDA
Feriado / Recesso
Aula
Lançamento (P1, P2 e Subst)
Início / Término Aulas
Avaliação (P1, P2 e Subst)
Edad
2
3
Banco de Dados (BD)
Para assistir a aula: Para assistir a aula: 
éé necessnecessáário estar que o aluno esteja rio estar que o aluno esteja 
matriculado na disciplina matriculado na disciplina 
(deve estar na lista de chamada)(deve estar na lista de chamada)
procurar a Coordenaprocurar a Coordenaçção do Curso ão do Curso 
para a solupara a soluçção de problemasão de problemas
4
LeiamLeiam
CCóódigo de digo de ÉÉticatica
ResoluResoluçção Conselho Superior não Conselho Superior nºº 02/201002/2010
de 12 de agosto de 2010de 12 de agosto de 2010
(dispon(disponíível na plataforma "vel na plataforma "BlackboardBlackboard")")
Banco de Dados
3
5
BD
Banco de Dados
EE--mail para receber o material enquanto não mail para receber o material enquanto não 
estestáá dispondisponíível o site da disciplinavel o site da disciplina
wpereira@cpovo.net
BD - Enviar material
6
�� BIBLIOGRAFIABIBLIOGRAFIA
�� Bibliografia bBibliografia báásica (ordem alfabsica (ordem alfabéética):tica):
�� DATE, CHRISTOPHER JDATE, CHRISTOPHER J. . IntroduIntroduçção a Sistemas de Bancos ão a Sistemas de Bancos 
de Dadosde Dados. Rio de Janeiro: Campus, 2000. . Rio de Janeiro: Campus, 2000. 
�� HEUSER, Carlos AlbertoHEUSER, Carlos Alberto. . Projeto de banco de DadosProjeto de banco de Dados. 6.ed. . 6.ed. 
Porto Alegre: Porto Alegre: BookmanBookman, 2010, 2010 ..
�� SILBERSCHATZ, Korth; SUDARSHANSILBERSCHATZ, Korth; SUDARSHAN. . Sistema de Banco Sistema de Banco 
de Dadosde Dados. 3. ed. São Paulo: Makron Books, 2005.. 3. ed. São Paulo: Makron Books, 2005.
Banco de Dados (BD)
4
7
�� BIBLIOGRAFIABIBLIOGRAFIA
�� Bibliografia complementar (ordem alfabBibliografia complementar (ordem alfabéética):tica):
�� ELMASRI, R.; NAVATHE, S. BELMASRI, R.; NAVATHE, S. B. . Sistemas de Banco de DadosSistemas de Banco de Dados. 4. ed. São . 4. ed. São 
Paulo: Pearson Education do Brasil, 2005.Paulo: Pearson Education do Brasil, 2005.
�� KROENKE, David MKROENKE, David M. . Banco de Dados: fundamentos, projeto e Banco de Dados: fundamentos, projeto e 
implementaimplementaççãoão. 6. ed. Rio de Janeiro: LTC, 1999.. 6. ed. Rio de Janeiro: LTC, 1999.
�� MACHADO, Felipe Nery; ABREU, MauricioMACHADO, Felipe Nery; ABREU, Mauricio. . Projeto de Banco de Dados: Projeto de Banco de Dados: 
uma visão pruma visão prááticatica. 16. ed. São Paulo: . 16. ed. São Paulo: ÉÉrica, 2009.rica, 2009.
�� MELO, Rubens NMELO, Rubens N. . Banco de Dados em AplicaBanco de Dados em Aplicaçções Clienteões Cliente--ServidorServidor. Rio . Rio 
de Janeiro: Infobook, 1997.de Janeiro: Infobook, 1997.
�� SETZER, Valdemar W; SILVA, FlSETZER, Valdemar W; SILVA, Fláávio Soares Correavio Soares Correa. . Bancos de Dados: Bancos de Dados: 
aprenda o que são, melhore seu conhecimento, construa o seuaprenda o que são, melhore seu conhecimento, construa o seu. São Paulo: . São Paulo: 
Edgard BlEdgard Blüücher Ltda, 2005.cher Ltda, 2005.
Banco de Dados (BD)
8
�� SITES PARA APROFUNDAMENTO E FERRAMENTAS:SITES PARA APROFUNDAMENTO E FERRAMENTAS:
�� brModelo 2.0brModelo 2.0. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. Dispon. Disponíível vel 
em: <http://www.sis4.com/brmodelo>. Acesso em 29 jul. 2012.em: <http://www.sis4.com/brmodelo>. Acesso em 29 jul. 2012.
�� DBDesigner 4DBDesigner 4. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. Dispon. Disponíível vel 
em: <http://fabforce.net/dbdesigner4/>. Acesso em 29 jul. 2012. em: <http://fabforce.net/dbdesigner4/>. Acesso em 29 jul. 2012. 
�� MySQLMySQL. . Sistema Gerenciador de Banco de Dados MySQLSistema Gerenciador de Banco de Dados MySQL. Dispon. Disponíível vel 
em: <http://www.mysql.com/>. Acesso em 29 jul. 2012. em: <http://www.mysql.com/>. Acesso em 29 jul. 2012. 
�� OracleOracle. . Sistema Gerenciador de Banco de Dados OracleSistema Gerenciador de Banco de Dados Oracle. Dispon. Disponíível em: vel em: 
<http://www.oracle.com/br/index.html/>. Acesso em 29 jul. 2012. <http://www.oracle.com/br/index.html/>. Acesso em 29 jul. 2012. 
�� Power DesignerPower Designer. . Ferramenta de modelagem de banco de dadosFerramenta de modelagem de banco de dados. dispon. disponíível vel 
em: em: 
<http://www.sybase.com/products/modelingdevelopment/powerdesigne<http://www.sybase.com/products/modelingdevelopment/powerdesigner>. r>. 
Acesso em Acesso em 29 jul. 2012.Acesso em Acesso em 29 jul. 2012.
Banco de Dados (BD)
5
9
FIES
10
Plano de Ensino
6
11
Plano de Ensino
12
Banco de Dados
Formem as equipes para o 2Formem as equipes para o 2°° TrabalhoTrabalho
Equipes de Equipes de 0303 ou ou 0404 integrantesintegrantes
7
13
Roteiro da Apresentação
�� IntroduIntroduççãoão
�� Modelos de dadosModelos de dados
�� Modelo RelacionalModelo Relacional
�� RestriRestriçções de integridadeões de integridade
�� Integridade de identidadeIntegridade de identidade
14
Roteiro da Apresentação
�� IntroduIntroduççãoão
�� Modelos de dadosModelos de dados
�� Modelo RelacionalModelo Relacional
�� RestriRestriçções de integridadeões de integridade
�� Integridade de identidadeIntegridade de identidade
8
15
� Fases:
Projeto de Banco de Dados
Modelo conceitualModelo conceitual
16
Entidade associativa
Generalização / Especialização
Relacionamento identificador
Atributo identificador
Atributo
Relacionamento
Entidade
SímboloConceito
� Esquemas Gráfico
Abordagem Entidade-Relacionamento
9
17
DATA
LOTAÇÃO FILIAL
COMPOSIÇÃO
Código
Nome Descrição
Código
Nome Obs
(0, N)
(1, N)
(0, N) (1, 1)
t
CLIENTE
CONSULTORIA
Código
(0, N)
(0, 1)
SUPERVISÃO
SUPERVISORSUPERVISIONADO
Descrição
DEPARTAMENTO
Código
CIDADE
Nome
(0, N)
NomeCIC
PESSOA
FÍSICA
Razão
Social
CNPJ
PESSOA
JURÍDICA
1N
POSSE
N° Sequencia
Número
TELEFONE
(1, 1)(0, N)
NomeCódigo
EMPREGADO
Abordagem Entidade-Relacionamento
17
UTILIZAÇÃO
18
� Fases:
Projeto de Banco de Dados
Modelo conceitualModelo conceitual
Modelo lógicoModelo lógico
Esquema relacional
Tipo_Produto (Codigo, Descricao)
Produto (Codigo, Nome, Preco, Cod_Tipo)
Cod_Tipo referencia Tipo_Produto)
Esquema relacional
Tipo_Produto (Codigo, Descricao)
Produto (Codigo, Nome, Preco, Cod_Tipo)
Cod_Tipo referencia Tipo_Produto)
10
19
Introdução
� Modelos de dados
Restrições de 
integridade
Integridade de 
identidade
Integridade 
referencial
Modelo
Lógico
Modelo 
Relacional
20
Roteiro da Apresentação
� Introdução
� Modelos de dados
� Modelo Relacional
� Restrições de integridade
� Integridade de identidade
11
21
�� consisteem uma consiste em uma colecoleçção de tabelasão de tabelas, cada qual com nome , cada qual com nome úúniconico
�� a base de dados vista pelos usua base de dados vista pelos usuáários como um rios como um conjunto de tabelasconjunto de tabelas
�� conjunto de tabelas conjunto de tabelas que representa os dados e a relaque representa os dados e a relaçção entre elesão entre eles
Modelo relacional
cod nome codEmp
A1 XXXX 1111
A2 YYYYY 3333
B2 TTTT 4444
B1 KKKK 1111
Empresa
Empregado
Empresa
Mundo real: Empresa
Empregado
Empresa
Empregado
Empresa
Mundo real: EmpresaMundo real: Empresa
codigo nome cpf
1111 JOSE 2113232
2222 MANUEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
Empregado
22
� Princípios matemáticos: uma relação é um subconjunto 
de um produto cartesiano de uma lista de domínios
Modelo relacional
cod nome codEmp
A1 XXXX 1111
A2 YYYYY 3333
B2 TTTT 4444
B1 KKKK 1111
Empresa
Empregado
Empresa
Mundo real: Empresa
Empregado
Empresa
Empregado
Empresa
Mundo real: EmpresaMundo real: Empresa
codigo nome cpf
1111 JOSE 2113232
2222 MANUEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
Empregado
12
23
�� RelaRelaçção ão ((princprincíípio matempio matemááticotico): subconjunto de um ): subconjunto de um 
produto cartesiano de uma lista de domproduto cartesiano de uma lista de domííniosnios
Modelo relacional
valores permitidos
23
1111 2222
3333 4444
codigo
JOSE MANOEL
CARLOS
PEDRO
nome
Quais as 
possibilidades de 
combinação ?
(produto cartesiano)
2113232
3678912
998750
6754309
cpf
DOMÍNIO
24
valores permitidos
atributos
Relação (R)
Tabela
Tupla
Linha
atributoscodigo nome cpf
1111 JOSE 2113232
2222 MANOEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
EMPREGADO
�� RelaRelaçção ão ((princprincíípio matempio matemááticotico): subconjunto de um produto cartesiano de ): subconjunto de um produto cartesiano de 
uma lista de domuma lista de domííniosnios
Modelo relacional
D1 D2
D3
c1 c2 c3 24
Qual o grande 
problema ??
13
25
�� Propriedades:Propriedades:
�� cada linha cada linha éé uma uma tuplatupla
�� não existe ordenamento de tuplasnão existe ordenamento de tuplas
�� não existe ordenamento de colunasnão existe ordenamento de colunas
�� não existem linhas duplicadasnão existem linhas duplicadas
Modelo relacional
Relação (R)
Tabela
Tupla
Linha
atributoscodigo nome cpf
1111 JOSE 2113232
2222 MANOEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
EMPREGADO
c1 c2 c3
25
26
Roteiro da Apresentação
� Introdução
� Modelos de dados
� Modelo Relacional
� Restrições de integridade
� Integridade de identidade
14
27
�� RestriRestriçções de integridadeões de integridade
�� RegrasRegras: garantem que mudan: garantem que mudançças feitas no BD por usuas feitas no BD por usuáários rios 
autorizados não resultem em perda de consistência de dados.autorizados não resultem em perda de consistência de dados.
�� Protegem o BD de danos acidentaisProtegem o BD de danos acidentais
�� Garantia da manutenGarantia da manutençção das regras de negão das regras de negóóciocio. Ex:. Ex:
�� Marido x MulherMarido x Mulher
�� Quantidade mQuantidade mááximo de horas de um trabalhadorximo de horas de um trabalhador
�� Disciplinas que um aluno pode freqDisciplinas que um aluno pode freqüüentarentar
�� Um empregado pode trabalhar somente em uma filialUm empregado pode trabalhar somente em uma filial
�� TiposTipos::
�� Integridade de identidadeIntegridade de identidade
�� Integridade referencialIntegridade referencial
Modelo relacional
28
Roteiro da Apresentação
� Introdução
� Modelos de dados
� Modelo Relacional
� Restrições de integridade
� Integridade de identidade
15
29
�� Integridade de identidadeIntegridade de identidade
�� Chaves: Chaves: 
�� superchavesuperchave
�� chave candidatachave candidata
�� chave primchave primááriaria
�� chave alternativachave alternativa
Modelo relacional
30
�� Superchave:Superchave:
�� Conjunto de Conjunto de umum ouou mais atributosmais atributos que, tomado que, tomado 
coletivamentecoletivamente, permite , permite identificar unicamente uma entidadeidentificar unicamente uma entidade
no conjunto de entidadesno conjunto de entidades. . 
�� Exemplo: Exemplo: codigocodigo
�� O conceito de O conceito de superchave superchave não não éé suficiente. Se suficiente. Se KK éé uma uma 
superchavesuperchave, então , então qualquer qualquer superconjuntosuperconjunto de de KK tambtambéém m serseráá. . 
Exemplo: Exemplo: codigocodigo e e nomenome..
Integridade de identidade
codigo nome cpf
1111 JOSE 2113232
2222 MANOEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
EMPREGADO
16
31
�� Chaves candidata:Chaves candidata:
�� conjunto conjunto mmíínimonimo de atributosde atributos (um ou mais) que, tomados (um ou mais) que, tomados 
coletivamentecoletivamente, permite , permite identificaridentificar de maneira de maneira úúnicanica uma uma 
entidadeentidade (ocorrência ou (ocorrência ou tuplatupla) em um conjunto de entidades) em um conjunto de entidades
�� podepode--se ter vse ter váárias chaves candidatas em uma relarias chaves candidatas em uma relaçção ão 
(tabela).(tabela).
�� qualquer qualquer superchavesuperchave que não tenha um subconjunto com que não tenha um subconjunto com 
outra outra superchavesuperchave
Integridade de identidade
32
�� Chaves candidata:Chaves candidata:
�� conjunto conjunto mmíínimonimo de atributosde atributos (um ou mais) que, tomados (um ou mais) que, tomados 
coletivamentecoletivamente, permite , permite identificaridentificar de maneira de maneira úúnicanica uma uma 
entidadeentidade (ocorrência ou (ocorrência ou tuplatupla) em um conjunto de entidades) em um conjunto de entidades
�� avaliar exemplos (avaliar exemplos (certos e erradoscertos e errados):):
�� codigocodigo
�� nomenome
�� cpfcpf
�� codigocodigo, nome, nome
�� codigocodigo, cpf, cpf
�� nome, cpfnome, cpf
�� codigocodigo, nome, cpf, nome, cpf
Integridade de identidade
codigo nome cpf
1111 JOSE 2113232
2222 MANOEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
EMPREGADO
17
33
�� Chaves candidata:Chaves candidata:
�� conjunto conjunto mmíínimonimo de atributosde atributos (um ou mais) que, tomados (um ou mais) que, tomados 
coletivamentecoletivamente, permite , permite identificaridentificar de maneira de maneira úúnicanica uma uma 
entidadeentidade (ocorrência ou (ocorrência ou tuplatupla) em um conjunto de entidades) em um conjunto de entidades
�� Embora os atributos Embora os atributos codigocodigo e e nomenome juntos possam formar juntos possam formar 
uma uma superchavesuperchave para para EMPREGADOEMPREGADO, esta combina, esta combinaçção não ão não 
forma uma forma uma chave candidatachave candidata, uma vez que o atributo , uma vez que o atributo codigocodigo
sozinho sozinho éé uma uma chave candidatachave candidata. . 
Integridade de identidade
codigo nome cpf
1111 JOSE 2113232
2222 MANOEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
EMPREGADO
34
�� Chave primChave primáária:ria:
�� chave candidata escolhida pelo projetista de BDchave candidata escolhida pelo projetista de BD, como , como 
principal meio para identificaprincipal meio para identificaçção das tuplas (linha ou ão das tuplas (linha ou 
registro) de uma relaregistro) de uma relaçção (tabela).ão (tabela).
�� observaobservaçção importante: ão importante: uma relauma relaçção (tabela) possui uma e ão (tabela) possui uma e 
somente uma chave primsomente uma chave primááriaria
Integridade de identidade
codigo nome cpf
1111 JOSE 2113232
2222 MANOEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
EMPREGADO
18
35
��Chave alternativa:Chave alternativa:
�� toda toda chave candidatachave candidata que que nãonão foi foi selecionadaselecionada como chave como chave 
primprimáária. ria. 
Integridade de identidade
codigo nome cpf
1111 JOSE 2113232
2222 MANOEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
EMPREGADO
36
codigo nome cpf
1111 JOSE 2113232
2222 MANOEL
CARLOS 998750
4444 PEDRO 6754309
EMPREGADO
�� Importante:Importante:
�� nenhum nenhum atributoatributo que participe de uma que participe de uma chave candidatachave candidata de de 
uma relauma relaçção (tabela) pode assumir ão (tabela) pode assumir valor nulovalor nulo (desconhecido (desconhecido 
ou não existe) ou não existe) 
Integridade de identidade
19
37
�� Importante:Importante:
�� normalmente a normalmente a DDLDDL provê mecanismo para definir provê mecanismo para definir chaves chaves 
primprimááriasrias, assim como dispositivo para especificar se um , assim como dispositivo para especificar se um 
atributo pode ou não aceitar valores nulosatributo pode ou não aceitar valores nulos
Integridade de identidade
CREATE TABLE <CREATE TABLE <tabletable--namename>>
( <( <atributoatributo--nomenome> dom> domíínio [nio [NOT NULLNOT NULL]]
[, <[, <atributoatributo--nomenome> dom> domíínio [nio [NOT NULLNOT NULL]]]]
[, [, PRIMARY KEYPRIMARY KEY (atributo(atributo--nome (s)]nome (s)]
[, [, UNIQUEUNIQUE (atributo(atributo--nome (s)];nome (s)];
CREATE TABLE EMPREGADOCREATE TABLE EMPREGADO
( ( codigocodigo NUMBER (4) NUMBER (4) NOT NULLNOT NULL
, nome VARCHAR2 (20) NOT NULL, nome VARCHAR2 (20) NOT NULL
, cpf VARCHAR2 (11) NOT NULL, cpf VARCHAR2 (11) NOT NULL
, , PRIMARY KEYPRIMARY KEY ((codigocodigo))
, UNIQUE (cpf) );, UNIQUE (cpf) );
codigo nome cpf
1111 JOSE 2113232
2222 MANOEL 3678912
3333 CARLOS 998750
4444 PEDRO 6754309
EMPREGADO

Continue navegando