Escolar Documentos
Profissional Documentos
Cultura Documentos
Aula 10
Que Deus o(a) abençoe, bom proveito e rumo agora à décima aula do curso,
com toda a garra e perseverança.
Insista, persista e não desista! Força a todos!
E-E-
E-mail: patricia@pontodosconcursos.com.br
Livro FCC/2014- 3ª. edição:
http://www.livrariadoponto.com.br/produto/5995/11391/informatica---fcc---serie-questoes-comentadas
Livro CESPE/2016:
http://www.grupogen.com.br/1001-questoes-comentadas-de-informatica-cespe.html.
Sumário
Modelo Relacional (Exemplo de Modelo Lógico) .............................................. 4
Linguagens de Banco de Dados...................................................................... 26
Memorex........................................................................................................ 28
Questões de Provas Comentadas ................................................................... 29
Referências Bibliográficas ............................................................................. 46
Lista de Questões Apresentadas na Aula ....................................................... 47
Gabarito ........................................................................................................ 54
Acompanhe a Evolução do seu Aproveitamento ............................................. 54
Ordenação A ordem das tuplas e dos atributos não importa para a relação.
Identidade Cada atributo de uma relação tem um nome que é único para
aquela relação.
Se uma destas chaves for escolhida como chave primária, as demais serão
chamadas de chaves alternativas.
Observe que no exemplo seguinte, não há qualquer diferença entre usar
Restrições de Integridade
o O modelo relacional traz consigo uma série de restrições, que são
características importantes do modelo.
o Entre elas, as mais populares são as restrições de integridade, que são
regras aplicadas pelo banco de dados para garantir que o banco
permaneça íntegro, exato e consistente. Em outras palavras, que o banco
de dados reflita a realidade modelada.
Restrição Característica
2.2. Esquema = Projeto geral do Banco de Dados -> os esquemas são alterados
com pouca frequência
Restrições de integridade.
O que significa isso? Ora, significa que pelo idAtor eu descubro o nomeAtor.
Ou seja, idAtor determina nomeAtor, e nomeAtor depende funcionalmente
de idAtor.
Mas será que o contrário é verdadeiro? Não, não é. Eu posso ter dois
atores com o mesmo nome, mas eles teriam idAtor diferentes. Então, pelo
nomeAtor eu não determino idAtor.
Quando o atributo X é uma chave primária, então todos os atributos são, por
definição, dependentes de X, pois não podem existir dois registros com o mesmo
valor para X.
A 1a Forma Normal prega que todos os atributos de uma tabela devem ser atômicos
(indivisíveis), ou seja, NÃO são permitidos atributos multivalorados, atributos
compostos ou atributos multivalorados compostos.
CLIENTE
1. Código
2. { Telefone }
Telefone 1 Endereço
sendo que a mesma não está na 1a Forma Normal pois seus atributos não são
atômicos.
Para que a tabela acima fique na 1a Forma Normal temos que eliminar os
atributos não atômicos, gerando as seguintes tabelas como resultado:
Se uma tabela não está na 2a Forma Normal, a mesma pode ser normalizada gerando
outras tabelas cujos atributos que não façam parte da chave primária sejam
totalmente funcionalmente dependente da mesma, ficando a tabela na 2a Forma
Normal.
E como fazer para deixar essa relação na 2FN? Simples, basta tirar o atributo nomeAtor
dessa relação e deixá-lo apenas na relação Ator.
Dessa forma, temos uma dependência transitiva, que deve ser evitada pela 3FN.
Mas trocando em miúdos, para uma relação estar em 3FN um campo não chave
não pode ser determinado por outro(s) campo(s) não chave. No caso da 3FN,
fazemos essa checagem para cada chave candidata.
Além da 3FN, todo atributo não chave deve depender funcionalmente diretamente da
chave primária, ou seja, não pode haver dependências entre atributos não chave. É
uma afirmação um pouco mais forte do que a 3FN.
É difícil encontrar uma relação que esteja em 3FN e que não esteja
em BCNF. Um conselho: não se preocupem muito a BCNF, eu a citei
apenas imaginando que a banca possa cobrar o conceito, e ver se
vocês pelo menos ouviram falar dela. Entendendo os conceitos de 1FN
a 3FN está ótimo!
Figura. Normalização
7. Criação de Tabelas
A criação do banco de dados deve começar com a criação das tabelas nas
quais os dados serão introduzidos.
O comando DDL para criar uma tabela deve conter os nomes das colunas, os
tipos dos seus dados e os tamanhos dos dados a serem introduzidos.
...
8. Criação de um Índice
Você pode criar tantos índices quantos desejar em qualquer tabela (É possível
ter um índice para cada coluna da tabela, assim como um índice para uma
combinação de colunas).
ON nome_da_tabela(nome_da_coluna);
Para EXCLUIR um índice, use o comando SQL DROP INDEX seguido do nome do
índice:
Se você tem índices definidos com o mesmo nome em tabelas diferentes, deve
usar a cláusula ON, como no exemplo acima, para indicar o índice que quer
eliminar.
Se há apenas um índice com este nome, então você não precisa especificar o
nome da tabela. O comando DROP abaixo será suficiente:
9. Alteração de Tabelas
Para excluir uma tabela de um banco de dados, use o comando DROP TABLE
seguido do nome da tabela:
Quando uma tabela é excluída por um comando SQL, como acima, todas as
visões e índices definidos sobre a tabela são automaticamente excluídos.
Exemplo:
11. Inserção
INSERT
Os valores inseridos devem ter o tipo compatível com o tipo da coluna na qual
estão sendo inseridos.
Valores do tipo CHAR devem estar entre aspas simples; valores do tipo NUM ou
do tipo NULL não devem ser colocados entre aspas simples.
Exemplos:
12. Atualização
UPDATE nome_da_tabela
SET coluna1=novo_valor,
Coluna2=novo_valor,
...
colunaN=novo_valor,
WHERE condição;
Você pode atualizar várias colunas em cada linha com um único comando
UPDATE listando as várias colunas após a cláusula SET, conforme visto acima.
Exemplo:
UPDATE PESSOA
SET idade = 20
13. Exclusão
O comando DELETE é usado para remover linhas de uma tabela. Sua forma geral
é:
DELETE
FROM nome_da_tabela
WHERE condição;
Você não pode excluir parcialmente uma linha, portanto não precisa especificar
os nomes das colunas no comando DELETE.
A cláusula WHERE determina que linhas serão eliminadas. Ela pode ser complexa
e incluir várias condições, conectores e/ou subconsultas.
Se você deseja excluir todas as linhas de uma tabela, omita a cláusula WHERE,
como listado a seguir:
DELETE
FROM nome_da_tabela;
FROM nome_da_tabela
WHERE condição;
Exemplos:
FROM PESSOA
Algumas das vantagens das Stored Procedures são: redução do tráfego na rede;
melhora do desempenho; criação de mecanismos de segurança e backup.
TRIGGERS (Gatilhos)
Uma trigger é uma sub-rotina, parecida com uma stored procedure, que tem
como característica ser executada automaticamente a partir de alguma
ação realizada no banco de dados.
Deve-se ressaltar que uma view não existe fisicamente, é uma tabela
virtual. No entanto, os dados contidos em uma view podem ser modificados
normalmente.
Para criar uma visão, você seleciona apenas as colunas da tabela (ou tabelas)
básica em que está interessado(a).
Visões podem ser criadas usando expressões de consulta para extrair dados
de outras visões.
Além disso, é possível criar uma visão que contém apenas dados calculados e,
que portanto, não tem dados armazenados em uma tabela base.
Para definir uma visão, você deve dar um nome para a visão e então estabelecer
a consulta contendo os nomes das colunas e as especificações que constituirão
a visão.
A sintaxe é:
AS (expressão da consulta);
Exemplo:
FROM EMPREGADO
A partir de agora, vamos pensar sobre o que faremos com o nosso Modelo
Relacional? Como já destacado anteriormente, o próximo passo é elaborar o
projeto físico do Banco de Dados.
Então, como vamos informar ao SGBD que nosso Banco de Dados tem
determinadas tabelas, com campos, chaves primárias, etc. Nesse ponto, é que
entram as linguagens que foram criadas para “dialogar” com o Banco de Dados.
Memorex
A linguagem SQL (Structured Query Language) foi desenvolvida para ser uma
linguagem padrão, independentemente do hardware ou software. Porém, ela é
uma linguagem específica para manipulação de
Comentários
Gabarito: A.
Comentários
Comentários
Gabarito: A.
(D) os valores de seus atributos devem ser distintos para cada entidade de um
conjunto de entidades.
Comentários
Exemplo:
Em chaves primárias, não pode haver valores nulos e nem repetição de tuplas.
Quando a chave primaria é simples ela é formada por um único campo da
tabela (esse campo não pode ter dois ou mais registros de mesmo valor e
também não pode conter nenhum registro nulo). Se a chave primária é
composta ela é formada por mais de um campo, os valores de cada campo
podem se repetir, mas não a combinação desses valores. As chaves primárias
não têm limitação da quantidade de atributos para serem formadas e nem tipo
de dados que as forme.
Gabarito: D.
Comentários
Gabarito: B.
II. Se existir um atributo não atômico, deve-se dividi-lo em outros atributos que
sejam atômicos.
Comentários
O item III está relacionado à 2FN, que destaca que todo atributo que não seja
chave deve ser totalmente dependente da chave primária.
Gabarito: A.
Comentários
Integridade de Domínio:
Integridade de Vazio:
Integridade de Chave:
Integridade Referencial:
Gabarito: A.
A) I B) II C) III D) I e II E) II e III
Comentários
Gabarito: E.
9 - (FUNIVERSA/2012/PC-DF/PERITO CRIMINAL/INFORMÁTICA)
Comentários
Comentários
11 - (ESAF/2008/STN/DESENV SISTEMAS)
Comentários
1ª Forma Normal (1FN): toda relação deve ter uma chave primária e deve-se
garantir que todo atributo seja atômico. Atributos compostos devem ser
separados.
2ª Forma Normal (2FN): toda relação deve estar na 1FN e devem-se eliminar
dependências funcionais parciais, ou seja, todo atributo não chave deve ser
totalmente dependente da chave primária.
Gabarito: letra C.
12 - (FUNIVERSA/2010/MPE-GO/TÉCNICO DE
INFORMÁTICA/ADAPTADA)
Comentários
Comentários
A fim de permitir um rápido acesso aleatório aos registros num arquivo, uma
estrutura de índice é usada. Cada estrutura de índice está associada a uma
chave de busca particular(índice).
e) uma Chave Externa é formada por uma coluna de uma tabela que se
referencia a uma Coluna qualquer de outra tabela. Essas colunas, na tabela
destino, não aceitam valores nulos. Uma tabela destino pode ter apenas uma
Chave Externa.
Comentários
A letra A está errada pois na 1FN, todos devem conter valores atômicos.
A letra B está correta pois mais de uma chave pode ser candidata a chave
primária.
A letra C está errada pois a chave primária deve conter valores que
identifiquem unicamente cada registro da tabela, não podendo ser nulos.
Já a letra E, está incorreta pois uma tabela pode conter mais de uma chave
externa.
Gabarito: B.
Comentários
Para estar na FNBC (Forma Normal Boyce-Codd), além da 3FN, todo atributo
não chave deve depender funcionalmente diretamente da chave primária, ou
seja, não pode haver dependências entre atributos não chave.
Gabarito: C.
Comentários
A banca cita que não possui tabelas aninhadas, ou seja, não tem atributos
compostos, e não possui campos multivalorados. Então, até esse ponto já está
pelo menos na 1FN.
Gabarito: B.
Comentários
São definidas para essas tabelas chaves primárias e/ou candidatas, de acordo
com o quadro a seguir.
Comentários
Gabarito: B.
II. Cada cliente tem apenas um código de cliente associado ao seu nome.
III. É possível que o produto “Cadeira”, por exemplo, seja cadastrado mais de
uma vez com códigos e preços diferentes.
IV. Não é permitido que, num mesmo pedido, possa constar a venda de dois ou
mais itens do mesmo produto.
(A) I;
(B) I e II;
(C) I, II e III;
Comentários
Gabarito: B.
Comentários
Gabarito: B.
Referências Bibliográficas
1 - (FUNIVERSA/2009/IPHAN/ANALISTA - TECNOLOGIA DA
INFORMAÇÃO)
A linguagem SQL (Structured Query Language) foi desenvolvida para ser uma
linguagem padrão, independentemente do hardware ou software. Porém, ela é
uma linguagem específica para manipulação de
(D) os valores de seus atributos devem ser distintos para cada entidade de um
conjunto de entidades.
II. Se existir um atributo não atômico, deve-se dividi-lo em outros atributos que
sejam atômicos.
A) I B) II C) III D) I e II E) II e III
9 - (FUNIVERSA/2012/PC-DF/PERITO CRIMINAL/INFORMÁTICA)
11 - (ESAF/2008/STN/DESENV SISTEMAS)
12 - (FUNIVERSA/2010/MPE-GO/TÉCNICO DE
INFORMÁTICA/ADAPTADA)
e) uma Chave Externa é formada por uma coluna de uma tabela que se
referencia a uma Coluna qualquer de outra tabela. Essas colunas, na tabela
destino, não aceitam valores nulos. Uma tabela destino pode ter apenas uma
Chave Externa.
São definidas para essas tabelas chaves primárias e/ou candidatas, de acordo
com o quadro a seguir.
II. Cada cliente tem apenas um código de cliente associado ao seu nome.
III. É possível que o produto “Cadeira”, por exemplo, seja cadastrado mais de
uma vez com códigos e preços diferentes.
IV. Não é permitido que, num mesmo pedido, possa constar a venda de dois ou
mais itens do mesmo produto.
Gabarito
20 20
20 20