Buscar

Banco de Dados Atividade 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 17 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 17 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 17 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

aTIVIDADE 2
PERGUNTA 1
1. Modelos de Entidade e Relacionamento (MER) refletem as informações numa abordagem mais próxima do mundo real e, para representar essas informações em um Modelo Relacional, é necessária uma atividade de conversão. Em um Modelo de Entidade e Relacionamento foi encontrado o seguinte relacionamento:
 
 
Fonte: Elaborada pelo autor.
 
Em relação ao que está expresso nessa parte do modelo e à forma de realizar a sua conversão para o Modelo Relacional, analise as sentenças a seguir e marque (V) para verdadeiro e (F) para falso. 
 
(    ) Um professor pode não estar alocado em uma turma.
(  ) Ao converter para o Modelo Relacional, a chave primária de TURMA passará para a tabela de PROFESSOR.
(  ) Uma turma necessariamente deve ter um professor.
(    ) Este é um caso de tabela associativa.
 
A seguir, assinale a alternativa que apresenta a sequência correta:
	
	
	V, F, V, F.
	
	
	V, V, V, V.
	
	
	V, V, V, F.
	
	
	V, F, V, V.
	
	
	V, V, F, V.
1 pontos   
PERGUNTA 2
1. Conceito usado como base para o modelo de dados relacional – que se parece com uma tabela de valores – como seu bloco de montagem básico. A sua base teórica reside em uma teoria de conjuntos e lógica de predicado de primeira ordem (ELMASRI, 2011, p. 38). 
ELMASRI, R.; NAVATHE, S. Sistemas de Banco de Dados . São Paulo: Pearson Addison Wesley, 2011, p. 38.
Com base no trecho apresentado anteriormente, assinale a alternativa que indique corretamente o conceito de Modelo Relacional:
	
	
	Relação.
	
	
	Chave estrangeira.
	
	
	Chave primária.
	
	
	Domínio de valores dos dados.
	
	
	Atributo.
1 pontos   
PERGUNTA 3
1. Ao desenvolver um sistema, a sua modelagem pode usar alguns tipos diferentes de modelos. Na UML, existem alguns, tais como: o diagrama de classes, de atividades ou casos de uso. Na modelagem de dados, podemos usar o Modelo de Entidade e Relacionamento ou o Modelo Relacional. Os modelos podem ter um nível de abstração que indicam o quanto eles visam expressar mais questões próximas ao mundo real ou ao outro extremo, isto é,  próximas ao universo de codificação do sistema. 
 
Nesse contexto, o Modelo de Entidade e Relacionamento (MER) é um modelo:
	
	
	De Nível Físico.
	
	
	De Nível Interno.
	
	
	De Nível Conceitual.
	
	
	De Nível Lógico.
	
	
	De Nível de Implementação.
1 pontos   
PERGUNTA 4
1. A construção de um software, especificamente da modelagem de dados, envolve algumas tarefas. Associe cada uma das tarefas necessárias para a construção de um modelo de dados ao contexto ou ao nível de abstração com o qual ela melhor se relaciona:
 
1. Processos de negócios e requisitos do sistema.
2. Modelo conceitual.
3. Modelo lógico.
4. Modelo físico.
 
(      ) Conversão das entidades em tabelas do banco de dados
(      ) Definição dos tipos de dados dos campos e tamanho de espaço em disco.
(      ) Definição de quais funções o sistema deve contemplar.
(      ) Determinação das entidades do sistema.
 
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta:
	
	
	I, IV, II, III.
	
	
	I, II, IV, III.
	
	
	II, IV, III, I.
	
	
	IV, I, II, III.
	
	
	III, IV, I, II.
1 pontos   
PERGUNTA 5
1. Em um sistema de universidade, os alunos são organizados em cursos, cada aluno pode se matricular em um curso e a universidade não permite que um aluno faça mais de um curso. O relacionamento entre Alunos e Cursos é um tipo de relação:
	
	
	De generalização.
	
	
	De autorrelacionamento.
	
	
	1:1.
	
	
	N:N.
	
	
	1:N.
1 pontos   
PERGUNTA 6
1. Ao criar um Modelo Relacional, situações mapeadas no modelo conceitual precisam ser convertidas. Em uma representação, por exemplo, relacionamentos dão origem ao conceito de chave estrangeira. 
 
Analise as seguintes situações sobre algumas situações nessa conversão do Modelo de Entidade e Relacionamento (MER) em um Modelo Relacional, e assinale (V) verdadeiro para indicar que o tratamento na conversão está correto e (F) Falso para situações em que o tratamento da conversão não está correto.
 
(   ) Em um sistema de consulta médica em que um Paciente mora em um Bairro e um Bairro pode ser associado a vários clientes. Nesse caso, uma chave estrangeira Bairro deve ser incorporada na tabela Cliente.
(  ) Em um sistema de uma empresa em que um Funcionário chefia apenas um setor e um setor é chefiado apenas por um Funcionario. Nesse caso, uma chave estrangeira Setor pode ser adicionada em Funcionario ou uma chave estrangeira Funcionario pode ser adicionada em Setor.
(  ) Em um sistema de condomínio em que um Morador mora em apenas um apartamento e um apartamento pode conter vários moradores, uma chave estrangeira Apartamento deve ser incorporada na tabela de Moradores.
(   )  Em um sistema de escola em que um aluno pode cursar várias disciplinas e uma disciplina pode conter vários alunos, uma tabela associativa deve ser criada contendo duas chaves estrangeiras, uma para Aluno e uma para Disciplina. 
 
A seguir, assinale a alternativa que apresenta a sequência correta:
	
	
	V, V, V, F.
	
	
	V, F, V, V.
	
	
	V, V, V, V.
	
	
	V, V, F, V.
	
	
	V, F, V, F.
1 pontos   
PERGUNTA 7
1. Em um sistema de locação de equipamentos, existe uma tabela LOCACAO que armazena os registros dos equipamentos que foram locados para os respectivos clientes. Uma locação tem uma informação da DATA_LOCAÇAO, que é DATETIME, e marcada como NOT NULL.
 
Estabeleça relação entre cada um dos itens destacados na questão com o que representam em uma modelagem relacional:
 
1. LOCACAO.
2. DATA_LOCACAO.
3. DATETIME.
4. NOT NULL.
 
(      ) Relação.
(      ) Especificação de obrigatoriedade.
(      ) Atributo
(      ) Tipo de Dados
 
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta:
	
	
	IV, I, II, III.
	
	
	III, II, IV, I.
	
	
	I, IV, II, III.
	
	
	IV, II, III, I.
	
	
	III, IV, I, II.
1 pontos   
PERGUNTA 8
1. “O modelo de dados relacional foi introduzido inicialmente por Ted Codd, da IBM Research, em 1970, em um artigo clássico (Codd, 1970), que atraiu atenção imediata. devido à simplicidade e à base matemática” (ELMASRI, 2011, p. 38).
ELMASRI, R; NAVATHE, S. Sistemas de Banco de Dados . São Paulo: Pearson Addison Wesley, 2011, p. 38.
 
No Modelo Relacional alguns elementos devem ser empregados ao estruturar os dados de determinado sistema. Faça uma associação entre os elementos a seguir e as definições apresentadas na sequência:
 
1. Relação.
2. Chave primária.
3. Chave estrangeira.
4. NULL.
 
(    ) A partir de uma tabela, referencia o código presente em outra tabela.
(    ) Identifica unicamente um determinado registro em uma relação.
(    ) Está associado à questão de obrigatoriedade de inserção dos valores no atributo.
(    ) Também denominadas tabelas e armazenam os registros do banco de dados 
 
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta:
	
	
	IV, I, II, III.
	
	
	I, IV, II, III.
	
	
	III, IV, I, II.
	
	
	IV, II, III, I.
	
	
	III, II, IV, I.
1 pontos   
PERGUNTA 9
1. No Modelo de Entidade e Relacionamento, quando várias entidades apresentam as mesmas características de outra entidade com alguns atributos mais específicos, por exemplo, Funcionário Administrativo e Funcionário da Fábrica são duas entidades que apresentam as mesmas características da entidade Funcionário. O tipo de relacionamento usado para representar esse caso é:
	
	
	Relacionamento entre entidade Forte e Fraca.
	
	
	Relacionamento por Entidade Associativa.
	
	
	Relacionamento de Generalização.
	
	
	Relacionamento Multivalorado.
	
	
	Relacionamento N:N.
1 pontos   
PERGUNTA 10
1. Um determinado sistema de identificação de pessoas em uma determinada portaria precisa armazenar no banco de dados as fotos das pessoas que entram em determinado edifício. O tipo de dados mais adequado para representar o campo FOTO na tabela de VISITANTES do sistema de portaria é:
	
	
	INTEGER.
	
	
	NUMERIC.
	
	
	VARCHAR.
	
	
	CHAR.
	
	
	BLOB.
1 pontos   
Clique emEnviar para enviar. Clique em Salvar todas as respostas para salvar todas as respostas.
aTIVIDADE 3
PERGUNTA 1
1. A linguagem SQL é bastante ampla e possui comandos e subconjuntos deles com propósitos, tais como definir a estruturação dos dados, manipular os registros de tabelas e ainda para gerenciamento de outros elementos em um SGBD, por exemplo, usuários, permissões, backup, restauração e outros. 
  
Em relação a alguns comandos de SQL, analise as afirmativas a seguir e assinale (V) para a(s) verdadeira(s) e (F) para a(s) falsa(s). 
  
I. ( ) O INSERT é um comando de DDL e é responsável por criar tabelas e realizar as inserções de seus registros. 
II. ( ) O ALTER TABLE é um comando de DDL e pode ser usado, por exemplo, para adicionar ou excluir uma coluna da tabela. 
III. ( ) O UPDATE é um comando de DML responsável pela alteração dos registros em tabelas, por exemplo, mudar o nome de um certo cliente. 
IV. ( ) O DROP é um comando de DML responsável por excluir as linhas de uma tabela, por exemplo, excluir um certo produto. 
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta:
	
	
	F, V, V, F.
	
	
	F, V, F, F.
	
	
	F, F, V, F.
	
	
	V, V, V, V.
	
	
	V, V, F, V.
1 pontos   
PERGUNTA 2
1. Um SGBD relacional foi concebido com base em algumas teorias sobre como representar os dados e como realizar manipulações sobre eles. Conforme Puga, França e Goya (2013), uma destas fundamentações teóricas é uma linguagem formal de alto nível para expressar as operações sobre tabelas, suas linhas e colunas. Ela contém operações como seleção, projeção, produto cartesiano e outras. 
  
PUGA, S; FRANÇA, E.; GOYA, M. Banco de Dados: implementação em SQL, PL/SQL e Oracle 11g. São Paulo: Pearson Education do Brasil, 2013. 
  
A linguagem a que se refere Puga, França e Goya (2013) é a :
	
	
	Structured Query Language (SQL)
	
	
	Álgebra Relacional.
	
	
	Lógica Proposicional.
	
	
	Data manipulation language (DML)
	
	
	Cálculo Diferencial
1 pontos   
PERGUNTA 3
1. A álgebra relacional fornece um conjunto de operadores que podem ser aplicados sobre relações e propõe uma sintaxe para combinar operadores e ainda processar condições lógicas com operações como E e OU lógicos. Para extrair um resultado a partir de uma relação, foi necessário formular uma sentença em álgebra linear. O cenário é o de uma locadora de automóveis, e a relação CARRO está apresentada a seguir com alguns valores: 
  
	Codigo
	Fabricante
	Modelo
	Ano
	1
	Ford
	Fiesta
	2016
	2
	Fiat
	Uno
	2018
	3
	Renault
	Clio
	2014
2. 
Fonte: Elaborado pelo autor. 
  
A consulta a ser feita é para saber, na lista de carros da locadora, qual o código e o modelo de carros com ano superior ou igual a 2015 e da marca Ford. Qual sentença atende a esta consulta em álgebra relacional? 
.
	
	
	π  ano >= 2015  ̌ Fabricante=Ford ( σ Codigo, Modelo ( CARRO ) )
	
	
	σ Codigo, Modelo ( π  ano >= 2015 ^ Fabricante=Ford ( CARRO ) )
	
	
	σ  ano >= 2015  ̌   Fabricante=Ford ( π Codigo, Modelo ( CARRO ) ).
	
	
	π Codigo, Modelo ( σ  ano >= 2015  ̌   Fabricante=Ford ( CARRO ) ).
	
	
	π Codigo, Modelo ( σ  ano >= 2015 ^ Fabricante=Ford ( CARRO ) )
1 pontos   
PERGUNTA 4
1. De acordo com Elmasri e Navathe (2011), o modelo relacional foi introduzido, em 1970, via um artigo clássico de CODD. Esta teoria de modelo relacional deu origem aos sistemas gerenciadores de bancos de dados relacionais (SGBDs) que têm sido amplamente empregados por aproximadamente 50 anos.  
  
ELMASRI, R.; NAVATHE, S. Sistemas de banco de dados. São Paulo: Pearson Addison Wesley, 2011. 
  
Em relação a esses SGBDs relacionais, analise as sentenças a seguir: 
  
I. Um dos motivos de sucesso dos SGBDs relacionais é a linguagem SQL, que serve para expressar os comandos que devem ser executados pelo SGBD 
  
Porque: 
  
II. Como essa linguagem (SQL) tornou-se um padrão, os usuários apresentam menos dificuldades para migrar suas aplicações; por exemplo, um usuário insatisfeito com um SGBD comercial pode implantar sua aplicação em outro SGBD com esforço e custo mais controlado. 
  
A seguir, assinale a alternativa correta:
	
	
	As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa correta da I.
	
	
	As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
	
	
	A asserção I é uma proposição verdadeira, e a II é uma proposição falsa.
	
	
	A asserção I é uma proposição falsa, e a II é uma proposição verdadeira.
	
	
	As asserções I e II são proposições falsas.
1 pontos   
PERGUNTA 5
1. O SQL (de Structured Query Language) é uma linguagem para o trato com os dados e apresenta um conjunto vasto de comandos que são divididos em partes da linguagem como a DDL e a DML. A DDL, que no português seria Linguagem para Definição de Dados (do inglês, Data Definition Language), trata de comandos para estruturação dos componentes de dados, e a DML (do inglês, Data Manipulation Language) engloba comandos para manipular registros nas tabelas. 
Analise as alternativas a seguir e marque a que representa um comando de DML:
	
	
	DROP INDEX
	
	
	CREATE VIEW
	
	
	ADD COLUMN
	
	
	DELETE
	
	
	ALTER TABLE
1 pontos   
PERGUNTA 6
1. Na construção de um banco de dados, em seu início, um projetista de dados compreende os requisitos de um sistema e faz a modelagem de dados criando um modelo de entidade e relacionamento ou um modelo relacional. A partir do modelo, os comandos de DDL (Data Definition Language) são usados para criar as tabelas e outras definições no banco de dados. 
Para um certo sistema, uma parte do modelo de dados está mostrado a seguir.  
 [1]  
Fonte: Elaborada pelo autor. 
Existe a necessidade de criar um comando para gerar a tabela de BAIRRO com todos os campos e restrições, que, considerando que todos os campos são obrigatórios, precisam ser preenchidos na manipulação dos registros. O comando para esta criação da tabela é:
	
	
	CREATE TABLE BAIRRO (           COD_BAIRRO INTEGER   NOT NULL,
                                                               DCR_BAIRRO VARCHAR(50)  NOT NULL,
                                                                COD_CIDADE INTEGER   NOT NULL);
	
	
	CREATE TABLE BAIRRO (           COD_BAIRRO INTEGER   NOT NULL,
                                                               DCR_BAIRRO VARCHAR(50)  NOT NULL,
                COD_CIDADE INTEGER   NOT NULL,
                                                               PRIMARY KEY (COD_BAIRRO) );
	
	
	CREATE TABLE BAIRRO (            COD_BAIRRO INTEGER   NOT NULL,
                                                               DCR_BAIRRO VARCHAR(50)  NOT NULL,
                COD_CIDADE INTEGER   NOT NULL,
                                                               FOREING KEY (COD_BAIRRO) 
REFERENCES CIDADE (COD_CIDADE ) );
	
	
	CREATE TABLE BAIRRO (         COD_BAIRRO INTEGER   NOT NULL,
                                                               DCR_BAIRRO VARCHAR(50)  NOT NULL,
                COD_CIDADE INTEGER   NOT NULL,
                                                               PRIMARY KEY (COD_BAIRRO) ,
                                                               FOREING KEY (COD_CIDADE) 
REFERENCES CIDADE (COD_CIDADE) );
	
	
	CREATE TABLE BAIRRO (           COD_BAIRRO INTEGER   NOT NULL,
                                                               DCR_BAIRRO VARCHAR(50)  NOT NULL,
                COD_CIDADE INTEGER   NOT NULL,
                                                               PRIMARY KEY (COD_BAIRRO) ,
                                                               FOREING KEY (COD_BAIRRO) 
REFERENCES CIDADE (COD_CIDADE) ); 
1 pontos   
PERGUNTA 7
1. Os comandos de SQL para manipulação de dados (DML) podem ser executados através de uma ferramenta administrativa, ou eles são executados internamente por um software ao se codificar uma funcionalidade do sistema. 
Imagine que um Módulo de Sistema de Recursos Humanos possui uma função que é aplicar um reajuste de um determinadovalor para todos os funcionários de um determinado setor. Essa situação pode ocorrer por conta de uma negociação de reajuste anual para a categoria de funcionários, por exemplo. Considerando que, em determinado ano, o reajuste foi de 3,5%, qual comando a seguir deve ter sido disparado pela função interna do sistema responsável por este reajuste?
	
	
	UPDATE FUNCIONARIO SET SALARIO = SALARIO * (3.5/100) 
                WHERE COD_SETOR = 10
	
	
	UPDATE FUNCIONARIO SET SALARIO = SALARIO + SALARIO * (3.5/100) 
                WHERE COD_SETOR = 10
	
	
	MODIFY FUNCIONARIO SET SALARIO = SALARIO * (3.5/100) 
                WHERE COD_SETOR = 10
	
	
	MODIFY FUNCIONARIO SET SALARIO = SALARIO + SALARIO * (3.5/100) 
                WHERE COD_SETOR = 10
	
	
	UPDATE FUNCIONARIO SET SALARIO = SALARIO + SALARIO * (3.5/100) 
                WHERE COD_CARGO = 10
1 pontos   
PERGUNTA 8
1. A álgebra relacional é uma linguagem formal aprendida ao se estudar banco de dados, pois as suas operações permitem entender como as manipulações de linhas e colunas podem ser realizadas em uma tabela. O seu conjunto de operações apresentam uma sintaxe e um objetivo, que é atingido ao ser aplicado em uma relação. 
  
Analise as operações presentes na álgebra relacional e associe com seus objetivos ou funcionalidades ao ser aplicada a uma relação. 
  
I) Projeção (π). 
II) Seleção (σ). 
III) Produto Cartesiano ( x ). 
IV) Interseção. 
  
Realize, agora, a associação com os objetivos das operações. 
( ) Permite selecionar as linhas ou tuplas em uma relação. 
( ) Combina duas relações, cada tupla sendo combinada com tuplas da outra relação. 
( ) Gera relação em que cada tupla deve existir em duas outras relações usadas na operação. 
( ) Permite selecionar as colunas em uma relação. 
  
A partir das relações feitas anteriormente, assinale a alternativa que apresenta a sequência correta:
	
	
	I, IV, II, III.
	
	
	I, II, IV, III.
	
	
	IV, I, II, III.
	
	
	III, I, II, IV.
	
	
	II, III, IV, I.
1 pontos   
PERGUNTA 9
1. Um dos comandos mais versáteis para o uso com banco de dados é o SELECT. Ele permite recuperar os registros de tabelas; sua sintaxe envolve a especificação das tabelas, quais colunas recuperar e os filtros que podem envolver operadores de comparação (>, <, =,...), outros como AND, OR, NOT e ainda existe o like e between. 
  
Para cada um dos operadores a seguir associe com sua funcionalidade em um comando SELECT: 
  
I.   like 
II.  between 
III. and 
IV. <> 
Associe os operadores com as funções dele em um comando de SQL: 
  
(     ) Permite combinar duas condições via uma operação lógica.  
(     ) Permite avaliar se um valor está entre dois limites. 
(     ) Permite avaliar se um campo de caracteres tem um padrão, contém alguma palavra. 
(     ) Permite avaliar se dois valores são diferentes entre si. 
  
Assinale a alternativa que apresenta a sequência correta:
	
	
	III, II, I, IV
	
	
	II, I, IV, III
	
	
	I, IV, III, II
	
	
	III, I, II, IV
	
	
	III, IV, I, II
1 pontos   
PERGUNTA 10
1. Em um modelo relacional, os conceitos de chaves são relevantes. As chaves primárias servem para identificar as linhas em uma tabela e, para o caso da chave estrangeira, ela permite estabelecer a restrição de que um valor depende de outro valor em outra tabela. Por exemplo, em um sistema de uma universidade, uma disciplina pertence a um curso e um curso pode conter várias disciplinas. A especificação destas tabelas pode ser compreendida a seguir; os campos em sublinhado são chaves primárias. 
  
DISCIPLINA (COD_DISCIPLINA, DCR_DISCIPLINA, COD_CURSO (FK)) 
CURSO(COD_CURSO, DCR_CURSO) 
  
A respeito dos comandos para criação das chaves primárias e estrangeiras deste modelo, analise as sentenças a seguir e assinale (V) para a(s)  verdadeira(s) e (F) para as falsa(s): 
  
I. (    ) Para criar a chave primária de disciplina, pode-se adicionar a cláusula a seguir junto com a sequência de campos no comando CREATE TABLE 
                “ PRIMARY KEY (COD_DISCIPLINA) ” 
II. (    )  Para criar a chave estrangeira na tabela disciplina, pode-se adicionar a cláusula a seguir junto com a sequência de campos no comando CREATE TABLE 
                “ FOREIGN KEY (COD_CURSO) REFERENCES CURSO(COD_CURSO) ” 
III. (    )  Uma outra forma de criar uma chave estrangeira é via o comando ALTER TABLE, e, para a chave estrangeira na tabela disciplina, pode ser usado desta forma 
                “ ALTER TABLE DISCIPLINA ADD 
                FOREIGN KEY (COD_CURSO) REFERENCES CURSO(COD_CURSO) ” 
IV.  (    ) Para criar uma chave primária, é possível também usar o comando a seguir 
                “ ALTER TABLE DISCIPLINA 
ADD CONSTRAINT ‘PK_DISC’ PRIMARY KEY (COD_DISCIPLINA) “ 
  
Conforme as associações realizadas, assinale a alternativa correta:
	
	
	V, V, V, V
	
	
	V, V, F, V
	
	
	V, V, V, F
	
	
	F, V, V, V
	
	
	V, F, V, V
1 pontos   
Clique em Enviar para enviar. Clique em Salvar todas as respostas para salvar todas as respostas.
ATIVIDADE 4
PERGUNTA 1
1. As funções de agregação permitem extrair informações úteis a partir de um determinado conjunto de resultados, elas sumarizam os valores de determinados campos em um único valor e elas podem ser usadas em todos os dados de um conjunto de resultados ou então podem ser combinadas com as cláusulas GROUP BY. 
 
Em um sistema, existe um cadastro de clientes com os seguintes dados: 
	CODIGO
	NOME
	CONTATO
	DATA_NASC
	SEXO
	BAIRRO
	1
	Adriana Araújo
	71 982213455
	1987-02-03
	F
	Barra
	2
	Renato Nogueira
	11 933321999
	1977-07-09
	M
	Morumbi
	3
	Viviane Sales
	11 987712022
	1995-11-02
	F
	Vila Madalena
	4
	Marcela Campos
	71 973514498
	1980-01-19
	F
	Barra
	5
	Rodrigo Gonçalves
	21 986121942
	1992-05-10
	M
	Centro
	6
	Jorge Marinho
	11 995439812
	1990-06-07
	M
	Morumbi
	7
	Rodrigo Vieira
	71 972318872
	1985-08-27
	M
	Centro
	8
	Vanessa Aquino
	21 933211346
	1972-02-15
	F
	Centro
2. 
 
Para extrair nesta tabela a data de nascimento do cliente mais velho, a cláusula SELECT deve apresentar a seguinte função de agregação:
	
	
	MAX(DATA_NASC)
	
	
	AVG(DATA_NASC)
	
	
	SUM(DATA_NASC)
	
	
	COUNT(DATA_NASC)
	
	
	MIN(DATA_NASC)
1 pontos   
PERGUNTA 2
1. Uma cláusula “group by”, parte do comando SELECT, permite criar agrupamentos, isto é, vários registros com os mesmos valores são combinados em uma linha e os valores dos outros campos podem ser resumidos através de funções de agregação, gerando cálculo de totais, contagens, médias e outros.  
Em um sistema de livraria, existe uma tabela LIVRO que contém os seguintes campos:
            
LIVRO (COD_LIVRO, TITULO, AUTOR, VALOR)
Para recuperar a lista dos autores com o total de títulos de sua autoria presentes na livraria e o valor médio dos valores de seus títulos, a consulta deve ser:
	
	
	SELECT       AUTOR, SUM(*), MEDIA(VALOR)          FROM LIVRO GROUP BY AUTOR
	
	
	SELECT       TITULO, SUM(*), AVG(VALOR)                         FROM LIVRO GROUP BY TITULO
	
	
	SELECT       TITULO, COUNT(*), AVG(VALOR)         FROM LIVRO GROUP BY TITULO
	
	
	SELECT      AUTOR, COUNT(*), AVG(VALOR)         FROM LIVRO GROUP BY AUTOR
	
	
	SELECT       AUTOR, COUNT(*), MEDIA(VALOR)     FROM LIVRO GROUP BY AUTOR
1 pontos   
PERGUNTA 3
1. O uso de agrupamentos é um recurso utilizado ao criar consultas com SELECT para sumarizar dados e realizar contabilizações ou totalizações, e a cláusula usada é o GROUP BY. Uma demanda comum é, ao realizar agrupamentos, realizar algum filtro sobre os campos calculados. Por exemplo, ao avaliar os clientes e o total de compras calculado via uma função SUM, pode-se querer filtrar apenas os clientes com este volume de compras acima de R$500,00. 
A palavra chave usada na cláusula que permite realizar este tipo de filtro sobre campos calculados por funções de agregação é a:
	
	
	WHERE
	
	
	INNER
	
	
	HAVING
	
	
	ORDER
	
	
	FROM
1 pontos   
PERGUNTA 4
1. As cláusulas WHERE, ORDER BY, GROUP BY, JOIN e outras são exemplos de partes de um SELECT e cada uma fornece algum recurso que traduz alguma necessidade ao se realizarconsultas sobre os dados. Ao consultar as tabelas de CARRO e FABRICANTE em um sistema de locadoras, foi realizada a seguinte consulta:
 
SELECT           F.FABRICANTE, COUNT(*), AVG(C.VLR_LOCACAO)
FROM               CARRO as C INNER JOIN FABRICANTE as F
ON       (C.COD_FABRICANTE = F.COD_FABRICANTE)
WHERE            ANO > 2015
AND     AR_COND = ‘S’
GROUP BY       FABRICANTE  
 
Considerando esta consulta, analise e assinale nas sentenças a seguir (V) para a(s) verdadeira(s) e (F) para a(s) falsa(s).  
 
I.   (  ) Os carros do ano 2015 serão considerados na consulta
II. ( ) Será mostrada a contagem de carros conforme condições e agrupados por fabricante
III. (  ) Apenas carros com ar condicionado serão contabilizados
IV.  ( ) Apenas carros que tiverem um fabricante cadastrado serão considerados
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta:
	
	
	F, V, V, V.
	
	
	F, V, F, F.
	
	
	V, V, F, V.
	
	
	V, V, V, V.
	
	
	F, F, V, F.
1 pontos   
PERGUNTA 5
1. Um banco de dados é um conjunto de componentes definidos de diversas formas via comandos de DDL. Por exemplo, dentre os componentes existem as tabelas, os procedimentos armazenados e as visões, dentre outros, cada um com suas finalidades. Sobre as visões, qual das sentenças a seguir representa uma das vantagens de usar estes componentes em um banco de dados?
	
	
	São funções que permitem contabilizar ou totalizar valores
	
	
	Permite armazenar dados para uma consulta mais simples
	
	
	Permite que consultas mais complexas sejam manipuladas de forma mais simples
	
	
	Definem os perfis de usuários que podem inserir dados no banco de dados
	
	
	Permite combinar dados de tabelas diferentes via chave estrangeira
1 pontos   
PERGUNTA 6
1. Os bancos de dados permitem que dados básicos, provenientes dos processos operacionais de um negócio, possam ser processados e sumarizados para se obter informações de nível gerencial e estratégico. Por exemplo, a quantidade de carros locados por semana em uma locadora, a quantidade de alunos matriculados em uma escola, além de outras situações ilustram o que pode ser processado facilmente com consultas via SELECT. 
Uma determinada Fintech realiza empréstimos para pessoas de uma comunidade e a tabela EMPRESTIMO mostrada a seguir apresenta os registros de empréstimos realizados: 
	CPF
	Data
	Sexo
	Valor
	02311220012
	10/04/2019
	M
	R$ 1.200,00
	91311770028
	13/04/2019
	F
	R$ 3.500,00
	84911560025
	21/04/2019
	F
	R$ 4.100,00
	73923560458
	23/04/2019
	M
	R$ 1.000,00
	64821569228
	02/05/2019
	M
	R$ 1.600,00
2. 
 
A consulta que calcula o total de empréstimo em reais realizado pela Fintech é
	
	
	SELECT       count(valor)       from  EMPRESTIMO
	
	
	SELECT       count(valor)       from  EMPRESTIMO GROUP BY SEXO
	
	
	SELECT       SUM(valor)       from  EMPRESTIMO GROUP BY SEXO
	
	
	SELECT      SUM(valor)       from  EMPRESTIMO
	
	
	SELECT       AVG(valor)        from  EMPRESTIMO
1 pontos   
PERGUNTA 7
1. Em um servidor de dados, os dados estão armazenados em tabelas e pelas questões de normalização, cada tabela trata especificamente dados relacionados com suas respectivas entidades. Quando ocorre a necessidade por informações mais abrangentes, os dados de tabelas diferentes precisam compor um resultado conjunto e o mecanismo que permite combinar dados de várias tabelas são as junções que podem ser de vários tipos. 
Considerando uma parte do modelo de um sistema de clínica médica, referente aos médicos e especialidades, tem-se as seguintes tabelas:
            
MEDICO (COD_MEDICO, CRM, NOME, CONTATO, COD_ESPECIALIDADE)
            ESPECIALIDADE (COD_ESPECIALIDADE, DCR_ESPECIALIDADE)
 
Todo médico está associado a uma especialidade, mas na clínica podem existir especialidades que não possuem médicos. A consulta que recupera todas as especialidades com os médicos relacionados, recuperando mesmo as especialidades sem médico cadastrado é:
	
	
	SELECT      *           FROM   MEDICO as M RIGHT OUTER JOIN ESPECIALIDADE as E 
    ON E.COD_ESPECIALIDADE = M.COD_ESPECIALIDADE
	
	
	SELECT       *           FROM   MEDICO as M FULL JOIN ESPECIALIDADE as E 
    ON M.COD_ESPECIALIDADE = E.COD_ESPECIALIDADE
	
	
	SELECT        *           FROM   ESPECIALIDADE as E RIGHT OUTER JOIN MEDICO as M 
    ON M.COD_ESPECIALIDADE = E.COD_ESPECIALIDADE
	
	
	SELECT       *           FROM   MEDICO as M INNER JOIN ESPECIALIDADE as E 
    ON M.COD_ESPECIALIDADE = E.COD_ESPECIALIDADE
	
	
	SELECT       *           FROM   MEDICO as M LEFT OUTER JOIN ESPECIALIDADE as E 
    ON M.COD_ESPECIALIDADE = E.COD_ESPECIALIDADE
1 pontos   
PERGUNTA 8
1. Uma visão (view) é um dos componentes que pode ser criado em um banco de dados junto com as tabelas, stored procedures, usuários e outros. Uma view, por ser um componente que ajuda a estruturar a forma como os dados são consultados, é definido por comandos de DDL e existe uma forma e comando específico para esta criação. 
Sobre o comando para criação de Views, analise as sentenças a seguir e assinale (V) para a(s) verdadeira(s) e (F) para a(s) falsa(s). 
 
I. ( ) O comando para a criação de uma view é o “ADD VIEW” 
II. ( ) Campos das views precisam ter os mesmos nomes da consulta usada para defini-la  
III. ( ) Ao ser criada, os dados da view são copiados para uma estrutura própria
IV. ( ) Uma view pode ser criada com base em outra view
 
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta:
	
	
	F, F, F, V.
	
	
	F, F, F, F.
	
	
	V, F, F, V.
	
	
	F, V, V, V.
	
	
	V, F, F, F.
1 pontos   
PERGUNTA 9
1. As views permitem simplificar a forma como as consultas podem ser feitas pois uma view abstrai a complexidade das consultas, por exemplo consultas com muitas junções, funções de agregação e outras. Daí, uma consulta utiliza a view como se fosse uma tabela virtual cuja definição é baseada na consulta mais complexa. 
 
Em um determinado sistema de compras, foi criada a seguinte view.  
	CREATE VIEW    `COMPRAS_CLIENTES_VW  AS          (NOME,                 BAIRRO,       DATA_NASC,         SEXO,                COD_CIDADE,    CIDADE,       DATA_COMPRA,     VALOR)  AS   SELECT             CLI.NOME,                    CLI.BAIRRO,                 CLI.DATA_NASC,          CLI.SEXO,             CID.COD_CIDADE,      CID.DCR_CIDADE,              CMP.DATA_COMPRA,  CMP.VLR_COMPRA FROM             CLIENTE CLI                INNER JOIN     COMPRA CMP                       ON CLI.COD_CLIENTE = CMP.COD_CLIENTE                INNER JOIN     CIDADE AS CID                       ON CLI.COD_CIDADE = CID.COD_CIDADE
2. 
 
Assinale qual sentença apresenta uma consulta correta feita com o uso da View.
	
	
	SELECT  NOME, VLR_COMPRA   FROM   COMPRAS_CLIENTES_VW
	
	
	SELECT  NOME, VLR_COMPRA   FROM   CLIENTE
	
	
	SELECT  NOME, DCR_CIDADE    FROM   COMPRAS_CLIENTES_VW
	
	
	SELECT  NOME, CIDADE              FROM   CLIENTE
	
	
	SELECT  NOME, COUNT(*)           FROM   COMPRAS_CLIENTES_VW GROUP BY NOME
1 pontos   
PERGUNTA 10
1. Em um banco de dados, os registros são armazenados e decompostos em tabelas e o relacionamento entre elas ocorre através de chaves estrangeiras que permitem combinar os dados. Por exemplo, os dados de cliente estão armazenados em uma tabela e os dados de compras estão armazenados em outra tabela, para se listar os dados de clientes com os dados de compras em conjunto, usa-se a chave estrangeira código do cliente para este elo. 
Neste sistema de loja, a seguinte consulta foi realizada:
 
            SELECT            CLI.*, COMP.*
            FROM               CLIENTE AS CLI LEFT OUTER JOIN COMPRAS AS COMP
            ON                   CLI.COD_CLIENTE = COMP.COD_CLIENTE
 
A respeito desta consulta assinale a afirmação correta:
	
	
	Apenas clientes com compras serão visualizados
	
	
	Todos os registros de clientes, mesmo que não tenham compras, serão visualizados
	
	
	Apenas registros que tenham valores nos dois campos e que tenham correlação serão visualizados.
	
	
	Todos os registrosde clientes e de compras mesmo que não tenham correlação entre si serão visualizados
	
	
	Todos os registros de compras, mesmo sem clientes, serão visualizados
1 pontos   
Clique em Enviar para enviar. Clique em Salvar todas as respostas para salvar todas as respostas.

Continue navegando