Buscar

Banco de dados Unidade 3

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 9 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 9 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 9 páginas

Prévia do material em texto

· Pergunta 1
1 em 1 pontos
	
	
	
	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
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?
.
	
	
	
	
		Resposta Selecionada:
	 
π Codigo, Modelo ( σ  ano >= 2015 ^ Fabricante=Ford ( CARRO ) )
	Resposta Correta:
	 
π Codigo, Modelo ( σ  ano >= 2015 ^ Fabricante=Ford ( CARRO ) )
	Feedback da resposta:
	Resposta correta. A alternativa está correta, pois está aplicando primeiro (na parte mais interna junto à relação CARRO) a operação de seleção (σ) com o operador lógico E (^) e combinando as duas condições para ano e fabricante. Depois, na parte mais externa, ela aplica a projeção (π)  escolhendo apenas as colunas Codigo e Modelo da relação.
	
	
	
· Pergunta 2
1 em 1 pontos
	
	
	
	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:
	
	
	
	
		Resposta Selecionada:
	 
III, II, I, IV
	Resposta Correta:
	 
III, II, I, IV
	Feedback da resposta:
	Resposta correta. A alternativa está correta, pois o and (Item III) é um operador lógico para combinar duas condições e o between (Item II) permite checar faixa de valores, “idade between 20 and 35” verifica se uma idade é maior que 20 e menor que 35. O like (item I) permite avaliar padrões de campos de caracteres, por exemplo, nome like ‘%Maria%” verifica se o nome contém a palavra Maria e o operador ‘<>’ (item IV) é um operador diferente, para checar se dois valores são diferentes.
	
	
	
· Pergunta 3
1 em 1 pontos
	
	
	
	Uma das manipulações que existem em banco de dados é a exclusão de registros em tabelas e em SQL. O comando para esta finalidade é o DELETE. A sintaxe deste comando envolve especificar qual a tabela que está sendo afetada e um filtro para indicar quais registros devem ser excluídos pelo comando.
 
Em um sistema de registro de áreas agrícolas, na tabela PLANTIO existem os seguintes registros:
	Código
	Município
	Área
	Produto
	Data Colheita
	1
	Alegre
	32,50
	Tomate
	20/02/2019
	2
	Linhares
	54,70
	Mamão
	05/03/2019
	3
	Sooretama
	47,30
	Tomate
	10/03/2019
	4
	Linhares
	52,10
	Café
	25/02/2019
	5
	Colatina
	35,80
	Café
	18/02/2019
	6
	Linhares
	43,70
	Mamão
	03/03/2019
Fonte: Elaborado pelo autor.
 
O seguinte comando foi executado no banco de dados:
                DELETE FROM    PLANTIO
                WHERE                 (AREA < 40) OR
                                                                (MUNICIPIO = ‘Linhares’ AND AREA > 50)
 
Quantas linhas foram afetadas por este comando?
	
	
	
	
		Resposta Selecionada:
	 
4
	Resposta Correta:
	 
4
	Feedback da resposta:
	Resposta correta. A alternativa está correta, pois, pela condição (AREA < 40), as linhas 1 e 5 serão afetadas e, pela condição (MUNICIPIO = ‘Linhares’ AND AREA > 50), as linhas 2 e 4 atendem à condição. Portanto, 4 linhas serão afetadas.
	
	
	
· Pergunta 4
1 em 1 pontos
	
	
	
	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 :
	
	
	
	
		Resposta Selecionada:
	 
Álgebra Relacional.
	Resposta Correta:
	 
Álgebra Relacional.
	Feedback da resposta:
	Resposta correta. A alternativa está correta, pois é a Álgebra Relacional, criada na IBM Research em 1970, que estabelece os fundamentos teóricos para a tecnologia de bancos de dados relacionais e com as características e operações presentes no enunciado.
	
	
	
· Pergunta 5
1 em 1 pontos
	
	
	
	Ao utilizar comandos de DDL (data definition language), o usuário do banco de dados pode criar, modificar ou excluir objetos em um banco de dados. O comando de CREATE TABLE, por exemplo, cria tabelas que basicamente são um conjunto de campos com seus tipos de dados e de restrições como chave primária e chave estrangeira. Em um sistema bancário, existe uma tabela TRANSACAO que foi criada com o seguinte comando:
 
                CREATE TABLE   TRANSACAO
                                (COD_TRANSACAO          INTEGER              NOT NULL,
                                COD_CONTA                      INTEGER              NOT NULL,
                                DATA                                     DATETIME           NOT NULL,
                                VALOR                                  NUMERIC(9,2)   NOT NULL,
                                TIPO                                      CHAR(1)               NOT NULL,
                                RESGATE                              CHAR(1)               NOT NULL,
FOREIGN KEY     (COD_CONTA) REFERENCES CONTA(COD_CONTA) )
 
Alguns campos possuem o nome intuitivo, já para TIPO vale esclarecer que este campo indica o tipo de transação, Crédito ou Débito. O campo RESGATE indica se a transação foi resultado de um resgate de aplicação. Considerando apenas o comando de CREATE TABLE apresentado, analise as sentenças a seguir e assinale (V) para a(s) opções verdadeiras ou (F) para as falsas.
 
I. (     ) O campo COD_TRANSACAO não pode ter valores repetidos, pois é chave primária.
II. (     ) O campo COD_CONTA não aceita valores com números decimais.
III. (     ) O campo RESGATE pode não ter valores atribuídos a este campo.
IV. (     ) O campo COD_CONTA só pode ter valores que existam no campo código de CONTA.
 
A partir das associações feitas anteriormente, assinale a alternativa que apresenta a sequência correta:
	
	
	
	
		Resposta Selecionada:
	 
F, V, F, V.
	Resposta Correta:
	 
F, V, F, V.
	Feedback da resposta:
	Resposta correta. A alternativa está correta, pois o item I é falso, uma vez que não há no comando a cláusula de primary key, portanto esta restrição não foi estabelecida e pode haver valores repetidos de código na tabela. O item II é verdadeiro, como o campo COD_CONTA é INTEGER, apenas valores inteiros (sem decimais) devem ser aceitos. O item III é falso, pois o campo RESGATE é not null, portanto é obrigatório ter um valor atribuído a este campo. Por fim, o item IV é verdadeiro; o campo COD_CONTA é uma chave estrangeira que aponta para o campo CÓDIGO na tabela de conta, portanto apenas valores de código presentes na tabela conta são válidos para este campo COD_CONTA na tabela de TRANSACAO.· Pergunta 6
1 em 1 pontos
	
	
	
	As atividades rotineiras de um desenvolvedor, ao manipular um banco de dados, envolve escrever consultas ou comandos em SQL e analisar os resultados que o servidor apresenta, por exemplo, ao inserir uma linha com um INSERT, ele depois checa se a linha foi inserida ou, quando realiza uma consulta, ele avalia os dados da consulta. Em uma destas tarefas, um programador obteve a seguinte consulta:
 
	Código
	Fabricante
	Placa
	Modelo
	Ano
	1
	Ford
	MQF4236
	Fiesta
	2016
	2
	Fiat
	QFG5534
	Uno
	2018
	3
	Renault
	FES3321
	Clio
	2014
	4
	Fiat
	QQF5298
	Idea
	2018
	5
	Renault
	AAX8943
	Sandero
	2013
Fonte: Elaborado pelo autor.
 
Qual consulta o programador deve ter digitado na ferramenta do SGBD?
	
	
	
	
		Resposta Selecionada:
	 
SELECT * FROM CARRO WHERE (ANO <=2015) OR  (PLACA LIKE ‘%QF%’)
	Resposta Correta:
	 
SELECT * FROM CARRO WHERE (ANO <=2015) OR  (PLACA LIKE ‘%QF%’)
	Feedback da resposta:
	Resposta correta. A alternativa está correta, pois a consulta combina os carros com ano inferior a 2015 (ANO <=2015), que são as linhas 3 e 5, e os que possuem ‘QF’ na placa 1, 2 e 4.
	
	
	
· Pergunta 7
1 em 1 pontos
	
	
	
	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:
	
	
	
	
		Resposta Selecionada:
	 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
	Resposta Correta:
	 
As asserções I e II são proposições verdadeiras, e a II é uma justificativa correta da I.
	Feedback da resposta:
	Resposta correta. A alternativa está correta, pois as duas sentenças estão certas e a linguagem SQL é, de fato, um dos fatores de sucesso dos SGBDs comerciais. Isso porque, como ela se tornou um padrão de mercado, vários fabricantes mantêm compatibilidade, desenvolvedores de tecnologia falam a mesma “linguagem”, o que possibilitou um vasto uso no mercado de TI.
	
	
	
· Pergunta 8
1 em 1 pontos
	
	
	
	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:
	
	
	
	
		Resposta Selecionada:
	 
F, V, V, F.
	Resposta Correta:
	 
F, V, V, F.
	Feedback da resposta:
	Resposta correta. A alternativa é a correta. Na sequência dos itens, o item I é falso, o comando INSERT não é de DDL (definição de dados), ele é de DML (manipulação de dados) e, além disso, não é responsável por criar tabelas, apenas inserções de registros. O comando para criar tabela é o CREATE TABLE, este sim de definição de dados (DDL). O item II é verdadeiro, pois adicionar ou excluir colunas são alterações em tabelas feitas por ALTER TABLE (definição de dados - DDL). O item III é verdadeiro, pois o UPDATE muda valores em registros (manipulação de dados - DML) como no caso de mudança de nomes. O item IV é falso; o DROP é usado para excluir elementos da estrutura dos dados, por exemplo, excluir tabelas, views, índices, e é um comando de DDL. O certo seria usar o comando DELETE para excluir linhas.
	
	
	
· Pergunta 9
1 em 1 pontos
	
	
	
	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:
	
	
	
	
		Resposta Selecionada:
	 
II, III, IV, I.
	Resposta Correta:
	 
II, III, IV, I.
	Feedback da resposta:
	Resposta correta. A alternativa está correta com a sequência II, III, IV, I. Seguindo essa sequência, a Seleção (sigma) (item II) é a operação que filtra as linhas em uma relação. O produto cartesiano (Item III), de fato, faz um processo combinatório com cada nova linha da relação, combinando um item de uma relação com um item de outra relação. O Item IV, Interseção, é a mesma operação conhecida de teoria de conjuntos, que gera um novo conjunto em um que o elemento é considerado apenas se ele pertencer aos outros dois conjuntos. E a projeção (item I), de fato, é a operação que seleciona quais colunas farão parte da relação resultante.
	
	
	
· Pergunta 10
1 em 1 pontos
	
	
	
	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:
	
	
	
	
		Resposta Selecionada:
	 
V, V, V, V
	Resposta Correta:
	 
V, V, V, V
	Feedback da resposta:
	Resposta correta. A alternativa está correta, pois todas as formas estão corretas. A adição de chaves pode ocorrer na lista de definição de campos e restrições do CREATE TABLE (item I e II) e pode ser adicionada posteriormente com o comando de ALTER TABLE sem nenhum nome para a restrição (Item III), ou identificando a restrição com a cláusula “CONSTRAINT ‘PK_DISC “.

Continue navegando