Baixe o app para aproveitar ainda mais
Prévia do material em texto
24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 1/15 Revisar envio do teste: Clique aqui para iniciar o Quiz SP_GRAD_686276_2204_01 2203-BANCO DE DADOS Quiz REVISAR ENVIO DO TESTE: CLIQUE AQUI PARA INICIAR O QUIZ Usuário WILKER MILHOMEM Curso 2203-BANCO DE DADOS Teste Clique aqui para iniciar o Quiz Iniciado 24/11/22 21:25 Enviado 24/11/22 23:26 Data de vencimento 07/12/22 23:59 Status Completada Resultado da tentativa 9 em 10 pontos Tempo decorrido 2 horas, 0 minuto Resultados exibidos Todas as respostas, Respostas enviadas, Respostas corretas, Comentários Pergunta 1 Considere a seguinte tabela: Tabela de municípios: nome uf populacao area São Paulo SP 12 252 023 1 521 Belo Horizonte MG 2 512 070 331 Sorocaba SP 679 378 450 Guaratinguetá SP 121 798 752 Rancharia SP 29 707 1 587 Altamira PA 114 594 159 533 Fonte: https://cidades.ibge.gov.br/ É correto afirmar que essa tabela: Sala de Aula Tutoriais 0 em 1 pontos WILKER MILHOMEM https://senacsp.blackboard.com/webapps/blackboard/execute/courseMain?course_id=_197292_1 https://senacsp.blackboard.com/webapps/blackboard/content/listContent.jsp?course_id=_197292_1&content_id=_8832201_1&mode=reset https://www.ead.senac.br/ https://senacsp.blackboard.com/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_260_1 https://senacsp.blackboard.com/webapps/portal/execute/tabs/tabAction?tab_tab_group_id=_210_1 https://senacsp.blackboard.com/webapps/login/?action=logout 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 2/15 Resposta Selecionada: b. Respostas: a. b. c. d. e. Comentário da resposta: Possui 4 registros. Possui 4 campos e 7 registros. Possui 4 registros. Possui os campos “nome”, “uf”, “populacao” e “area”. Utiliza todos os tipos de colunas presentes no MySQL: text e integer. Não é uma tabela; na verdade é uma tupla. c. Cada coluna que vemos corresponde a um campo da tabela do banco de dados. A primeira linha que vemos representa os nomes dos campos; já as linhas subsequentes representam os registros da tabela do banco de dados. Pergunta 2 Placa do Mercosul: tire suas dúvidas e saiba o que já mudou no projeto. As novas placas no padrão Mercosul finalmente começaram a ser usadas no Brasil – inicialmente no Rio de Janeiro e gradualmente em outros Estados .… Como serão as sequências? Figura - O padrão novo troca o segundo número por uma letra Descrição acessível: Figura mostra duas placas de carro. Placa de cima é uma placa cinza (padrão antigo – no topo há a sigla do estado e nome do município) e a placa de baixo é uma placa Mercosul (padrão novo – fundo branco, topo azul, sem sigla do estado, sem nome do município e com bandeira do Brasil). A placa cinza possui numeração PHL4506, enquanto que a placa Mercosul possui a numeração PHL4F06. 1 em 1 pontos 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 3/15 Resposta Selecionada: d. Os países do Mercosul que adotarem a nova placa, inclusive, poderão estabelecer essa distribuição de maneira distinta. Por exemplo, enquanto na Argentina a sequência tem sido LL NNN LL, no Brasil ela será inicialmente LLL NLNN para automóveis e LLL NN LN para motocicletas. Como ficará a sequência em carros já emplacados? Como a nova placa manterá a quantidade de caracteres, porém com mudanças na sequência de letras e números, quem fizer a troca da placa antiga pela nova em um veículo já registrado verá o segundo número (da esquerda para a direita) ser substituído por uma letra de acordo com a tabela abaixo: Como é Como ficará 0 A 1 B 2 C 3 D 4 E 5 F 6 G 7 H 8 I 9 J Com isso, uma placa QUA1960 se transformará em QUA1J60, com o “J” dando lugar ao “9”. (Placa do Mercosul: tire suas dúvidas e saiba o que já mudou. Quatro rodas. Disponível em: <https://quatrorodas.abril.com.br/a uto-servico/placa-do-mercosul-tire-suas-duvidas-e-saiba-o-que-ja- mudou-no-projeto/>. Acesso em: mar. 2020). Considere a notícia acima e a existência de diversos bancos de dados no Brasil que armazenam veículos em seus registros. Considere que cada um desses bancos de dados tenha uma tabela de veículos, cuja chave primária é a placa. Considere ainda que em cada banco de dados há outras tabelas que apontam para a tabela de veículos por meio de chaves estrangeiras. Dadas essas considerações, assinale a alternativa correta. https://quatrorodas.abril.com.br/auto-servico/placa-do-mercosul-tire-suas-duvidas-e-saiba-o-que-ja-mudou-no-projeto/ 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 4/15 Respostas: a. b. c. d. e. Comentário da resposta: Mesmo com essas mudanças, é possível manter a placa como chave primária. Quando um veículo trocar de placa, será preciso atualizar a chave primária na tabela de veículos e atualizar os valores das chaves estrangeiras nas outras tabelas. Como cada uma dessas operações pode violar as restrições do banco de dados, pode ser necessário algum subterfúgio como por exemplo a desabilitação das chaves estrangeiras durante a operação. As tabelas de veículos não aceitarão que um dado veículo troque de placa, uma vez que não é possível alterar o valor de uma chave primária. Quando um veículo trocar de placa, basta atualizar diretamente a chave primária na tabela de veículos (as chaves estrangeiras nunca impedirão essa mudança). Essa alteração no “espaço do problema” provocará obrigatoriamente uma necessidade de atualização no sistema para que se utilize algum outro campo como chave primária: talvez o número de chassi ou mesmo um valor sequencial gerado automaticamente. Mesmo com essas mudanças, é possível manter a placa como chave primária. Quando um veículo trocar de placa, será preciso atualizar a chave primária na tabela de veículos e atualizar os valores das chaves estrangeiras nas outras tabelas. Como cada uma dessas operações pode violar as restrições do banco de dados, pode ser necessário algum subterfúgio como por exemplo a desabilitação das chaves estrangeiras durante a operação. A alteração apenas da chave primária na tabela de veículos não fere a integridade referencial do banco de dados, uma vez que a tabela de veículos permanece consistente. d. Embora a existência de chaves estrangeiras possa complicar a operação, é possível atualizar chaves primárias. Também é possível configurar as chaves estrangeiras para que sejam atualizadas automaticamente (“on update cascade”), mas essa opção não é default. Pergunta 3 O diagrama a seguir representa uma modelagem ER para bandas de rock. 1 em 1 pontos 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 5/15 Resposta Selecionada: b. Respostas: a. b. c. d. e. Comentário da resposta: 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 possuirexatamente 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. Para um banco de dados que utilize a modelagem apresentada no diagrama, assinale a alternativa 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 Considere a execução de uma sequência de comando, mas com uma parte dos comandos executados em uma sessão, e a outra parte executada em outra 1 em 1 pontos https://senacsp.blackboard.com/bbcswebdav/pid-8832210-dt-content-rid-260272854_1/xid-260272854_1 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 6/15 Resposta Selecionada: a. Respostas: a. b. c. d. e. Comentário da resposta: sessão. Os comandos estão listados abaixo, de forma que 1> indica o prompt da sessão 1, enquanto 2> indica o prompt da sessão 2. 1> CREATE TABLE pessoa (id int, nome text); 1> INSERT INTO pessoa VALUES (1, 'Fulano'); 1> BEGIN; 1> INSERT INTO pessoa VALUES (2, 'Ciclano'); 2> BEGIN; 2> INSERT INTO pessoa VALUES (3, 'Beltrano'); 2> ROLLBACK; 2> SELECT * FROM pessoa; Assinale a alternativa que indica a saída obtida para a execução do último comando da sequência. +------+--------+ | id | nome | +------+--------+ | 1 | Fulano | +------+--------+ +------+--------+ | id | nome | +------+--------+ | 1 | Fulano | +------+--------+ Empty set +------+---------+ | id | nome | +------+---------+ | 1 | Fulano | | 2 | Ciclano | +------+---------+ +------+----------+ | id | nome | +------+----------+ | 1 | Fulano | | 2 | Ciclano | | 3 | Beltrano | +------+----------+ You have an error in your SQL syntax a. “Beltrano” não aparecerá pois foi inserido em uma transação abortada. “Ciclano” não aparecerá pois foi inserido em uma 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 7/15 transação que está em outra sessão e que ainda não efetivada. Por fim, “Fulano” aparecerá, pois foi inserido sem o uso de transação. Pergunta 5 Resposta Selecionada: e. Respostas: a. Considere a tabela abaixo, denominada tab1 e contendo as colunas col1 e col2. col1 col2 10 1 20 2 30 3 Descrição acessível: Tabela com duas colunas: col1 e col2. Conteúdo composto apenas de números. A SQL possui um recurso que possibilita a execução de operações aritméticas entre as colunas, como demonstra a seguinte consulta: > SELECT col1 + col2 as soma FROM tab1; soma 11 22 33 Considere ainda a existência de uma tabela acidentes_aereos, em que cada registro representa um acidente aéreo e que possui as colunas quantidade_passageiros e quantidade_vitimas_fatais. Assinale a alternativa que corretamente consulta a porcentagem de vítimas fatais (em relação ao total de passageiros) de cada acidente na tabela acidentes_aereos. SELECT quantidade_vitimas_fatais / quantidade_passageiros * 100 as porcentagem_sobreviventes FROM acidentes_aereos; (SELECT quantidade_vitimas_fatais FROM acidentes_aereos) / (SELECT quantidade_passageiros FROM acidentes_aereos) * 100; 1 em 1 pontos 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 8/15 b. c. d. e. Comentário da resposta: SELECT porcentagem_sobreviventes FROM acidentes_aereos; SELECT IN acidentes_aereos VALUE quantidade_vitimas_fatais / quantidade_passageiros * 100 as porcentagem_sobreviventes; SELECT quantidade_vitimas_fatais FROM quantidade_passageiros * 100 IN acidentes_aereos; SELECT quantidade_vitimas_fatais / quantidade_passageiros * 100 as porcentagem_sobreviventes FROM acidentes_aereos; e. Para obter a porcentagem de vítimas é preciso dividir, em cada registro, e quantidade de vítimas pela quantidade de passageiros e multiplicar essa proporção por 100. Pergunta 6 Resposta Selecionada: b. 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; +--------+-------------------------+ | pais | qtd_pratos_vegetarianos | +--------+-------------------------+ | Índia | 10 | | Itália | 7 | | Brasil | 4 | +--------+-------------------------+ 1 em 1 pontos 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&co… 9/15 Respostas: a. b. c. d. e. Comentário da resposta: 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 7 Resposta Selecionada: d. Ao elaborar um sistema, um desenvolvedor criou uma tabela no MySQL utilizando o seguinte comando: CREATE TABLE livro ( titulo TEXT, autor TEXT, editora TEXT, ano INTEGER); O desenvolvedor deve agora documentar essa tabela por meio de um diagrama ER. Qual das alternativas exibe um diagrama que o desenvolvedor poderia utilizar para realizar essa documentação? 1 em 1 pontos 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&c… 10/15 Respostas: a. b. Descrição acessível: Figura possui um retângulo “Livro” associado (ligado por retas) a quatro circunferências. As circunferências são “título”, “autor”, “editora” e “livro”. Descrição acessível: Figura possui um retângulo “Livro” associado (ligado por uma reta) a uma circunferência. O rótulo das circunferências é “título, autor, editora, livro”. 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&c… 11/15 c. d. e. Descrição acessível: Figura possui um grande retângulo “Livro” associado (ligado por retas) a quatro pequenos retângulos. Os retângulos pequenos são “título”, “autor”, “editora” e “livro”. Descrição acessível: Figura possui um retângulo cujo texto possui duas linhas. Primeira linha é “Livro”. Segunda linha é “título, autor, editora, ano”. Descrição acessível: Figura possui um retângulo “Livro” associado (ligado por retas) a quatro circunferências. As circunferências são “título”, “autor”, “editora” e “livro”. 24/11/2022 23:26 Revisar envio do teste:Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&c… 12/15 Comentário da resposta: Descrição acessível: Figura possui um grande quadrado “Livro” com quatro pequenos quadrados dentro desse quadrado maior. Os quadrados pequenos são: “título”, “autor”, “editora” e “livro”. d. A opção d é a que segue corretamente a nomenclatura visual de diagramas ERs: entidades são representadas como retângulos, e os atributos das entidades são representados como circunferências associadas ao retângulo da entidade. 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 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 linha de 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.) 1 em 1 pontos 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&c… 13/15 Resposta Selecionada: a. Respostas: a. b. c. d. e. Comentário da resposta: 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 partir 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 partir 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 utilizado. Logar como o discutido, passando a senha na linha de comando, mas especificando o uso de uma conexão SSL segura entre cliente e banco de dados. Logar como o discutido, passando a senha na linha de comando, mas usando um contêiner Docker. O manual do MySQL está defasado. Na última versão disponível do MySQL, o método discutido é 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 Considere as seguintes tabelas: 1 em 1 pontos 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&c… 14/15 Resposta Selecionada: a. Respostas: a. b. c. d. e. Comentário da resposta: CREATE TABLE paciente (id int primary key, nome text); CREATE TABLE medico (id int primary key, nome text); CREATE TABLE consulta (data date, id_paciente int, id_medico int); Assinale a alternativa que indica uma consulta válida para identificarmos os médicos que não possuem consulta marcada na data de hoje. SELECT DISTINCT m.nome as nome_medico FROM medico m LEFT JOIN consulta c ON c.id_medico = m.id WHERE data != curdate() or data is null; SELECT DISTINCT m.nome as nome_medico FROM medico m LEFT JOIN consulta c ON c.id_medico = m.id WHERE data != curdate() or data is null; SELECT DISTINCT m.nome as nome_medico FROM medico m JOIN consulta c ON c.id_medico = m.id WHERE data != curdate() or data is null; SELECT DISTINCT m.nome as nome_medico FROM medico m RIGHT JOIN consulta c ON c.id_medico = m.id WHERE data != curdate() or data is null; SELECT DISTINCT m.nome as nome_medico FROM medico m LEFT JOIN consulta c WHERE c.id_medico = m.id and data != curdate() or data is null; Dada a modelagem apresentada, não é possível realizar a consulta desejada com um único SELECT. a. Com um LEFT JOIN, teremos os médicos associados a alguma consulta e também os médicos sem consultas. Para que a consulta devolva os médicos sem consulta alguma marcada, temos o “data is null”. Para que a consulta devolva os médicos com consulta marcada em outros dias que não o dia corrente, temos o “data != curdate()”. Sem o DISTINCT, a consulta SQL devolveria uma linha por consulta médica, o que poderia repetir os nomes dos médicos. Como queremos listar somente os médicos, o DISTINCT é desejável. Pergunta 10 Considere a tabela municipio criada com o seguinte comando: CREATE TABLE municipio ( 1 em 1 pontos 24/11/2022 23:26 Revisar envio do teste: Clique aqui para iniciar o Quiz &ndash... https://senacsp.blackboard.com/webapps/assessment/review/review.jsp?attempt_id=_28035541_1&course_id=_197292_1&c… 15/15 Quinta-feira, 24 de Novembro de 2022 23h26min21s BRT Resposta Selecionada: b. Respostas: a. b. c. d. e. Comentário da resposta: id int auto_increment primary key, nome text, uf varchar(2) ); Considere ainda o seguinte estado para a essa tabela: > select * from municipio; +----+------------+------+ | id | nome | uf | +----+------------+------+ | 1 | São Paulo | SP | | 2 | Osasco | SP | | 3 | Mateiros | TO | +----+------------+------+ Dado o estado definido acima, considere a execução do seguinte comando: INSERT INTO municipio (nome, uf) VALUES ('Salvador', 'BA'); Considere agora as seguintes afirmações: I – A execução do comando acima incorrerá em erro. II – A chave primária deve ser especificada no comando INSERT. Assinale agora a opção correta. As sentenças I e II são falsas. As sentenças I e II são verdadeiras e a II é a explicação da I. As sentenças I e II são falsas. A sentença I é verdadeira, mas a II é falsa. As sentenças I e II são verdadeiras, mas a II não é a explicação da I. Apenas a sentença II é verdadeira. b. A chave primária foi especificada com a opção auto_increment, o que dispensa a especificação da chave primária no comando INSERT. ← OK
Compartilhar