Baixe o app para aproveitar ainda mais
Prévia do material em texto
06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 1/13 Revisar envio do teste: Clique aqui para iniciar o Quiz SP_GRAD_686276_2202_01 2201-BANCO DE DADOS Quiz REVISAR ENVIO DO TESTE: CLIQUE AQUI PARA INICIAR O QUIZ Usuário LAIS PEREIRA DOS SANTOS ARAUJO Curso 2201-BANCO DE DADOS Teste Clique aqui para iniciar o Quiz Iniciado 06/06/22 18:45 Enviado 06/06/22 19:18 Data de vencimento 08/06/22 23:59 Status Completada Resultado da tentativa 9 em 10 pontos Tempo decorrido 32 minutos Resultados exibidos Todas as respostas, Respostas enviadas, Respostas corretas, Comentários Pergunta 1 Resposta Selecionada: c. Informação Um computador só trata de dados, sendo incapaz de associar significados a eles. Assim, é válido chamar essa máquina de “processador de dados”; é inválido dizer que ela “processa informações”. Tudo se passa com o computador como se ele lidasse apenas com dados (…) De fato, o computador não “compreende” absolutamente nada. O computador é uma máquina sintática, pois as relações entre dados são sempre feita de maneira estrutural, por exemplo por contiguidade física dentro do dispositivo de armazenamento ou por meio dos chamados “ponteiros”. Um dado “aponta” para outro, se ao lado do primeiro coloca-se o endereço do segundo, indicando onde o último está armazenado. Um computador pode ser programado para reconhecer padrões, como por exemplo a escrita manual cursiva. Mas isso é feito de maneira puramente matemática, com uma quantidade tão enorme de cálculos que deveria provocar profunda admiração pelo ser humano que, parece-nos, obviamente não calcula nada enquanto lê. Ao lermos, estamos continuamente associando conceitos para reconhecer letras e palavras, e muito mais ainda para compreender uma frase. (SETZER, V. W.; SILVA, F. S. C. da. Banco de dados: aprenda o que são, melhore seu conhecimento, construa os seus. São Paulo: Edgard Blücher, 2005.) Segundo o texto acima, os autores reconhecem que: Sala de Aula Tutoriais 1 em 1 pontos LAIS PEREIRA DOS SANTOS ARAUJO 53 https://senacsp.blackboard.com/webapps/blackboard/execute/courseMain?course_id=_182442_1 https://senacsp.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_182442_1&content_id=_8155590_1&mode=reset https://www.ead.senac.br/ https://senacsp.blackboard.com/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_193_1 https://senacsp.blackboard.com/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_210_1 https://senacsp.blackboard.com/webapps/login/?action=logout 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 2/13 Respostas: a. b. c. d. e. Comentário da resposta: Máquinas compreendem apenas dados e suas estruturas; a transformação de dados em informação é restrita a humanos. Máquinas inteligentes poderão processar informações como humanos, graças à detecção de padrões. Sofis�cados cálculos matemá�cos podem atribuir semân�ca a operações robó�cas. Máquinas compreendem apenas dados e suas estruturas; a transformação de dados em informação é restrita a humanos. Por mais que uma máquina não "compreenda" como seres humanos, isso não impede as máquinas de armazenar e manipular informações. O reconhecimento algorítmico de letras cursivas transforma o dado (imagem) em informação (texto). c. O autor conceitua que o computador se relaciona apenas com dados, não com informações. Pergunta 2 Resposta Selecionada: c. Respostas: a. Considere a seguinte sequência de comandos: > SELECT id, saldo FROM conta_corrente WHERE id in (1324, 7634); id saldo ----- -------- 1324 5000.0 7634 40000.0 > BEGIN; > UPDATE conta_corrente SET saldo = saldo - 100 WHERE id = 1324; > UPDATE conta_corrente SET saldo = saldo + 200 WEHRE id = 7634; > COMMIT; > SELECT id, saldo FROM conta_corrente WHERE id in (1324, 7634); Qual é a saída produzida pelo último comando? id saldo ----- -------- 1324 5100.0 7634 40000.0 id saldo ----- -------- 1324 5100.0 7634 40200.0 0 em 1 pontos 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 3/13 b. c. d. e. Comentário da resposta: id saldo ----- -------- 1324 5000.0 7634 40000.0 id saldo ----- -------- 1324 5100.0 7634 40000.0 … You have an error in your SQL syntax ... ----- -------- 1324 7634 5000.0 40000.0 b. Como há um erro de sintaxe no segundo UPDATE e os comandos de UPDATE estão envoltos em uma transação (BEGIN, COMMIT), então nenhum UPDATE será efe�vo. Por isso a saída final será igual a saída do primeiro SELECT. Pergunta 3 O diagrama a seguir representa uma modelagem ER para bandas de rock. Descrição acessível: Figura possui dois retângulos: “Banda de rock” (esquerda) e “Músico” (direita). Possui ainda quatro losangos no centro (um em baixo do outro): “vocalista”, “guitarrista”, “baixista” e “baterista”. Para cada losango há uma ligação do “Banda de rock” pro losango, e do losango pro “Músico”. Todos os losangos possuem o número 1 à esquerda (lado da “Banda de rock”). O losango “guitarrista” possui um “N” à direita (lado do “Músico”), enquanto que os outros losangos possuem um “1” à direita. Considere as seguintes afirmações: I – Uma banda de rock pode ter vários guitarristas. II – Uma banda de rock deve possuir exatamente quatro músicos. III – Uma banda de rock não pode possuir mais que um baterista. IV – Uma banda de rock é obrigada a ter um baixista. V – Uma banda de rock não pode possuir um flautista. VI – Um músico pode pertencer a várias bandas. 1 em 1 pontos https://senacsp.blackboard.com/bbcswebdav/pid-8155599-dt-content-rid-244537583_1/xid-244537583_1 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 4/13 Resposta Selecionada: b. Respostas: a. b. c. d. e. Comentário da resposta: Para um banco de dados que u�lize a modelagem apresentada no diagrama, assinale a alterna�va que apresente todas as afirmações verdadeiras. I, III, IV e V. I, III, IV e IV. I, III, IV e V. I e VI. I, III, IV, V e VI. II, III e IV. b. O diagrama mostra que uma banda de rock deve possuir um vocalista, um ou mais guitarristas, um baixista e um baterista. O diagrama também mostra que cada músico deve pertencer a exatamente uma banda. Pergunta 4 Resposta Selecionada: d. Como o MySQL utiliza índices Os índices são usados para rapidamente localizar linhas com valores de coluna específicos. Sem um índice, o MySQL deve começar com a primeira linha e depois ler a tabela inteira para encontrar as linhas relevantes. Quanto maior a tabela, mais isso custa. Se a tabela �ver um índice para as colunas em questão, o MySQL poderá determinar rapidamente a posição a ser procurada no meio do arquivo de dados sem precisar examinar todos os dados. Isso é muito mais rápido do que ler todas as linhas sequencialmente. (Traduzido da documentação oficial do MySQL. Disponível em: <h�ps://d ev.mysql.com/doc/refman/8.0/en/mysql-indexes.html>. Acesso em: mar. 2020. Sobre índices é correto afirmar que: 1 em 1 pontos https://dev.mysql.com/doc/refman/8.0/en/mysql-indexes.html 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 5/13 Respostas: a. b. c. d. e. Comentário da resposta: Considereuma base de dados construída para análises cien�ficas que é montada uma vez e depois não é mais atualizada, e que possui muitos dados. Nesse caso compensa construir diversos índices que serão úteis para as consultas dos cien�stas, pois mesmo que o tempo de criação dos índices seja grande, a alta velocidade das leituras subsequentes compensará o tempo de criação dos índices. A criação de índices é imprescindível para qualquer tabela do MySQL. Considere um sistema muito acessado por usuários de todo o mundo e uma tabela que armazene os eventos de login desses usuários. Nesse caso, a criação de um índice nessa tabela de registro de login é conveniente para acelerar o tempo de inserção, provendo uma melhor experiência para o usuário. Índices deixam inserções mais lentas e consomem mais espaço em disco. Por essas razões devem ser usados apenas em tabelas com mais de um milhão de registros. Só nesses casos os custos compensarão os ganhos de velocidade de leitura. Considere uma base de dados construída para análises cien�ficas que é montada uma vez e depois não é mais atualizada, e que possui muitos dados. Nesse caso compensa construir diversos índices que serão úteis para as consultas dos cien�stas, pois mesmo que o tempo de criação dos índices seja grande, a alta velocidade das leituras subsequentes compensará o tempo de criação dos índices. Os índices são recursos u�lizados em bancos de dados an�gos. O sistema de o�mização de consultas do MySQL (optimum lookup process) dispensa a u�lização de índices em tabelas do MySQL. d. Índices aceleram consultas e são muito u�lizados. Um problema muito comum em sistemas lentos é a falta de índices em tabelas do banco de dados (seja no MySQL ou em outros SGBDs). Por outro lado, o preço a se pagar é: inserções mais lentas e mais espaço ocupado no disco. Contudo, tabelas muito pequenas podem dispensar índices. Pergunta 5 Considere as seguintes tabelas: CREATE TABLE bares (nome text, preco float); CREATE TABLE restaurantes (nome text, preco float); CREATE TABLE cafes (nome text, preco float); 1 em 1 pontos 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 6/13 Resposta Selecionada: b. Respostas: a. b. c. d. e. Comentário da resposta: Assinale a alternativa que forneça um significado plausível para o seguinte comando: SELECT nome, preco FROM ( SELECT nome, preco FROM bares WHERE preco = (SELECT min(preco) FROM bares) UNION SELECT nome, preco FROM restaurantes WHERE preco = (SELECT min(preco) FROM restaurantes) UNION SELECT nome, preco FROM cafes WHERE preco = (SELECT min(preco) FROM cafes) ) as lazer WHERE preco < 100; Um rapaz está procurando um lugar para marcar um encontro. Ele está em dúvida entre um restaurante, um bar ou um café. Como o rapaz está com pouco dinheiro, ele vai considerar somente as opções mais baratas de cada categoria, e desde que o preço da diversão não saia mais que 100 reais. Um inves�dor está procurando um estabelecimento para comprar. Ele está analisando um certo conjunto de restaurantes, bares e cafés. Ele pretende comprar o mais barato entre todos esses estabelecimentos, desde que o preço não ultrapasse 100 mil reais. Um rapaz está procurando um lugar para marcar um encontro. Ele está em dúvida entre um restaurante, um bar ou um café. Como o rapaz está com pouco dinheiro, ele vai considerar somente as opções mais baratas de cada categoria, e desde que o preço da diversão não saia mais que 100 reais. Um inves�dor pretende comprar um restaurante, um bar e um café. Mas o café ele só vai comprar se custar menos de 100 mil reais. Uma construtora aluga espaços para estabelecimentos comerciais, como restaurantes, bares e cafés. Um analista dessa construtora está montando um relatório com os aluguéis mais rentáveis para a construtora. A consulta não significa nada, pois possui um erro de sintaxe. b. A consulta retornará a princípio três registros: o restaurante mais barato, o bar mais barato e o café mais barato. Mas cada uma dessas três linhas só será exibida se seu preço correspondente for menor que 100. 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 7/13 Pergunta 6 Resposta Selecionada: b. Respostas: a. b. c. d. e. Comentário da resposta: Considere a uma tabela voos contendo um registro por voo e a coluna orig_estado_abrv, que representa o estado da federação de origem do voo. Qual será o resultado da consulta abaixo? SELECT count(*) FROM voos WHERE orig_estado_abrv = 'SP' AND orig_estado_abrv = 'RJ'; Zero. A soma das quan�dades de voos par�ndo do estado de São Paulo e voos par�ndo do estado do Rio de Janeiro. Zero. Duas linhas, uma linha com a quan�dade de voos par�ndo do estado de São Paulo e outra linha com a quan�dade de voos par�ndo do estado do Rio de Janeiro. Uma linha com duas colunas; uma coluna com a quan�dade de voos par�ndo do estado de São Paulo e outra coluna com a quan�dade de voos par�ndo do estado do Rio de Janeiro. Um erro, pois a sintaxe está incorreta. b. Um mesmo registro não pode ter um valor (“SP”) para uma coluna e ao mesmo tempo outro valor (“RJ”) para a mesma coluna. Dessa forma nenhuma linha sa�sfará a condição imposta pelo WHERE. O que resultará numa contagem de zero linhas. Pergunta 7 Considere a seguinte tabela de pratos disponíveis em um restaurante: CREATE TABLE pratos (nome text, pais_origem text, vegetariano boolean, preco float); Considerando essa tabela, assinale a alternativa com o comando que torna possível a execução da seguinte consulta: SELECT pais_origem as pais, count(*) as qtd_pratos_vegetarianos FROM pratos_vegetarianos GROUP BY pais_origem; +--------+-------------------------+ 1 em 1 pontos 1 em 1 pontos 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 8/13 Resposta Selecionada: b. Respostas: a. b. c. d. e. Comentário da resposta: | pais | qtd_pratos_vegetarianos | +--------+-------------------------+ | Índia | 10 | | Itália | 7 | | Brasil | 4 | +--------+-------------------------+ CREATE VIEW pratos_vegetarianos AS SELECT nome, pais_origem FROM pratos WHERE vegetariano; CREATE SUBSELECT pratos_vegetarianos AS SELECT nome, pais_origem AS pais FROM pratos WHERE vegetariano; CREATE VIEW pratos_vegetarianos AS SELECT nome, pais_origem FROM pratos WHERE vegetariano; CREATE SUBSELECT pratos_vegetarianos AS SELECT nome, pais_origem FROM pratos WHERE vegetariano; CREATE VIEW pratos_vegetarianos FROM SELECT nome, pais_origem FROM pratos WHERE vegetariano; CREATE VIEW FOR pratos AS SELECT * FROM pratos_vegetarianos WHERE vegetariano; b. Para que a consulta funcione, é preciso criar uma view para a tabela pratos. E a sintaxe para criar uma view é CREATE VIEW <nome-da-view> AS <SELECT ...>. Pergunta 8 6.1.2.1 Orientações do usuário final para a segurança de senha Use a opção --password = password ou -ppassword na linha de comando. Por exemplo: shell> mysql -u francis -pfrank db_name 1 em 1 pontos 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_81555… 9/13 Resposta Selecionada: a. Respostas: a. b. c. d. Aviso Isso é conveniente, mas inseguro. Em alguns sistemas, sua senha fica visível para programas de status do sistema, como ps, que podem ser invocados por outros usuários para exibir linhas de comando. Os clientes MySQL geralmente substituem o argumento da senha da linhade comandos com zeros durante sua sequência de inicialização. No entanto, ainda há um breve intervalo durante o qual o valor é visível. Além disso, em alguns sistemas, essa estratégia de substituição é ineficaz e a senha permanece visível para o ps. (Os sistemas SystemV Unix e talvez outros estejam sujeitos a esse problema.) Se o seu ambiente operacional estiver configurado para exibir seu comando atual na barra de título da janela do terminal, a senha permanecerá visível enquanto o comando estiver em execução, mesmo se o comando já estiver fora de vista. MYSQL. MySQL 8.0 Reference Manual. 2020. O trecho acima do manual do MySQL explica que um determinado método de login possui um certo risco de segurança. Indique qual seria uma alternativa segura ao método discutido. Logar com a opção -p sem passar o parâmetro (senha) no comando, o que fará com que a senha seja lida a par�r de um prompt seguro do terminal. Logar com a opção -p sem passar o parâmetro (senha) no comando, o que fará com que a senha seja lida a par�r de um prompt seguro do terminal. Logar com a opção -p sem passar o parâmetro (senha) no comando, o que fará com que o usuário anônimo seja u�lizado. Logar como o discu�do, passando a senha na linha de comando, mas especificando o uso de uma conexão SSL segura entre cliente e banco de dados. 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_8155… 10/13 e. Comentário da resposta: Logar como o discu�do, passando a senha na linha de comando, mas usando um contêiner Docker. O manual do MySQL está defasado. Na úl�ma versão disponível do MySQL, o método discu�do é inteiramente seguro. a. Com a senha sendo digitada em modo interativo (com a opção - p), não há como outro programa capturar a senha digitada, a menos que haja algum programa espião que capture as teclas sendo digitadas. Pergunta 9 Resposta Selecionada: b. Respostas: a. b. c. d. e. Considere um banco de dados com uma tabela voos, contendo a coluna companhia, com a sigla da companhia aérea que operou o voo. Considere também que esse banco possui uma tabela companhias, com um cadastro de todas as companhias aéreas existentes. O que representa a seguinte consulta? SELECT (SELECT count(distinct companhia) FROM voos) / (SELECT count(*) FROM companhias); Considere como dica os seguintes comandos e suas respectivas saídas: > SELECT 4; 4 > SELECT 4/2; 2 A proporção de companhias cadastradas que operaram voos registrados na tabela voos. A quan�dade de companhias que operaram voos registrados na tabela voos. A proporção de companhias cadastradas que operaram voos registrados na tabela voos. A quan�dade total de companhias cadastradas. Não representa nada, pois seja qual for o conteúdo das tabelas esse comando sempre retorna o número zero. 1 em 1 pontos 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_8155… 11/13 Comentário da resposta: Não representada nada, pois resultará em um erro devido a sintaxe incorreta. b. A consulta está dividindo o “count(dis�nct companhia) FROM voos” (quan�dade de companhias que operaram voos) por “SELECT count(*) FROM companhias” (quan�dade de empresas cadastradas). Ou seja, temos a proporção de empresas que operaram voos pelo total de empresas cadastradas. Pergunta 10 Resposta Selecionada: e. Respostas: a. b. Considere um banco de dados para um sistema de controle de estacionamentos. Os requisitos básicos são: o sistema precisa armazenar o horário de início e de fim da estadia de cada veículo. Para cada estadia é preciso registrar qual o veículo que foi estacionado, assim como o dono desse veículo. Assinale a alternativa que corresponda a uma modelagem para esse problema que esteja na BCFN. Descrição acessível: tabela estadia com campos inicio, fim e placa_veiculo; tabela veiculo com campos placa, marca, modelo, cor e cpf_dono; tabela dono com campos cpf e nome; estadia.placa_veiculo é chave estrangeira para veiculo.placa; veiculo.cpf_dono é chave estrangeira para dono.cpf. Descrição acessível: tabela estadia com campos inicio, fim e placa_veiculo; tabela veiculo com campos placa, marca-modelo- cor e cpf_dono; estadia.placa_veiculo é chave estrangeira para veiculo.placa. 1 em 1 pontos 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_8155… 12/13 c. d. e. Comentário da Descrição acessível: tabela veiculo com campos placa, marca, modelo, cor, cpf_dono, inicios_estadias e fins_estadias; tabela dono com campos cpf e nome_completo; estadia.cpf_dono é chave estrangeira para dono.cpf. Descrição acessível: tabela estadia com campos inicio, fim, duracao e placa_veiculo; tabela veiculo com campos placa, marca, modelo, cor e cpf_dono; tabela dono com campos cpf e nome; estadia.placa_veiculo é chave estrangeira para veiculo.placa; veiculo.cpf_dono é chave estrangeira para dono.cpf. Descrição acessível: tabela estadia com campos inicio, fim e placa_veiculo; tabela veiculo com campos placa, marca, modelo, cor e cpf_dono; tabela dono com campos cpf, nome_completo, primeiro_nome e sobre_nome; estadia.placa_veiculo é chave estrangeira para veiculo.placa; veiculo.cpf_dono é chave estrangeira para dono.cpf. Descrição acessível: tabela estadia com campos inicio, fim e placa_veiculo; tabela veiculo com campos placa, marca, modelo, cor e cpf_dono; tabela dono com campos cpf e nome; estadia.placa_veiculo é chave estrangeira para veiculo.placa; veiculo.cpf_dono é chave estrangeira para dono.cpf. 06/06/2022 19:18 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_24872401_1&course_id=_182442_1&content_id=_8155… 13/13 Segunda-feira, 6 de Junho de 2022 19h18min12s BRT resposta: e. Opção A viola a 1FN – campo multivalor (marca-modelo-cor). Opção B viola a 1FN – campos com listas de valores (inicios_estadias e fins_estadias). Opção C viola a 2FN – atributo (duracao) é função de parte da chave (inicio, fim, placa). Opção D viola a 3FN – atributos não chave (primeiro_nome e sobre_nome) dependem de outro atributo não chave (nome_completo). Opção E está na BCFN (não apresenta nenhuma violação à BCFN). ← OK
Compartilhar