·

Cursos Gerais ·

Bases de Dados

Envie sua pergunta para a IA e receba a resposta na hora

Fazer Pergunta

Texto de pré-visualização

REVISAR ENVIO DO TESTE: CLIQUE AQUI PARA INICIAR O QUIZ\n\nUsuário LUCAS NICOLAU VIEIRA\nCurso 2202-BANCO DE DADOS\nTeste Clique aqui para iniciar o Quiz\nInício 28/09/22 02:59\nEnviado 28/09/22 02:59\nData de vencimento 28/09/22 23:59\nStatus Aguardando respostas, Respostas enviadas, Respostas corretas, Comentários\n\nPergunta 1\n6.1.2.1 Orientações do usuário final para a segurança de senha\n\nUse a opção --password ou -p password na linha de comando. Por exemplo:\n\n shell> mysql -u francis -pfrank db_name\n\nAviso\n\nIsso é conveniente, mas inseguro. Em alguns sistemas, sua senha fica visível para programas de status do sistema, como ps, que podem ver processos de outros usuários para exibir linhas de comando. Os clientes MySQL provavelmente também salvarão a senha visível enquanto o comando estiver em execução, mesmo que o comando já estiver fora de vista.\n\nMYSQL. MySQL 8.0 Reference Manual. 2020.\n\nO trecho ainda do manual do MySQL explica que um determinado método de login possui um certo risco de segurança.\n\nIndique qual seria uma alternativa segura ao método discutido.\n\nResposta:\n\nLogar com a opção -p sem passar o parâmetro (senha) no comando, o que fará com que seja lida a partir de um arquivo sorgente ou terminal.\n\nResposta:\n\nLogar com a opção -p sem passar o parâmetro (senha) no comando, o que fará com que seja lida a partir de um terminal.\n\nLogar com a opção -p sem passar o parâmetro (senha) no comando, o que fará com que seja lida a partir de um terminal, caso a senha permaneça na linha de comando, mas utilizando Docker. ainda há um breve intervalo durante o qual o valor é visível. Adem disso, em alguns sistemas, essa estratégia de substituição é ineficaz e a senha permanece visível para o ps. (Os sistemas SystemV e Unix; outros estejam sujeitos a esse problema.)\n\nAssim, se o ambiente operacional estiver configurado para exibir seu comando atual na barra de título do janela do terminal, a senha permanecerá visível enquanto o comando estiver em execução, mesmo que o comando já estiver fora de vista.\n\nO trecho ainda do manual do MySQL explica que um determinado método de login possui um certo risco de segurança.\n\nIndique qual seria uma alternativa segura ao método discutido.\n\nLOGAR COM A OPÇÃO -P.\n\nLogar com a opção -p sem passar o parâmetro (senha) no comando, o que fará com que seja lida a partir de um arquivo sorgente ou terminal. Pergunta 2\nConsidere um banco de dados com uma tabela vos, contendo a coluna companhia, com a sigla da companhia aenei que operou o vos. Considere também que esse banco possui uma tabela companhias, com um cadastro de todas as companhias aéreas. \n\nO que representa a seguinte consulta?\n\nSELECT (SELECT count(distinct companhias) FROM vos) \n (SELECT count(*) FROM companhias);\n\nconsiderando como saída os seguintes comandos e suas respectivas saídas:\n\nSELECT 4;\nSELECT 2;\n\nRespostas Selecionadas:\n\nA quantidade de companhias que operaram vos registradas na tabela vos.\n\nRespostas:\n\nA quantidade de companhias que operaram vos registradas na tabela vos.\nA propriedade de companhias cadastradas que operaram vos registradas na tabela vos.\nNo mesmo regiono, não sei por que o conteúdo das tabelas sempre retornou o número zero.\n\nRespostas:\n\nA quantidade de companhias que operaram vos registradas na tabela vos. Pergunta 3\nConsidere a tabela municipio criada com o seguinte comando:\nCREATE TABLE municipio (\n id int auto_increment primary key,\n nome text,\n vazio varchar(2)\n);\nConsidere agora o seguinte estado para essa tabela:\n| id | nome | vazio |\n|----|--------------|-------|\n| 1 | São Paulo | SP |\n| 2 | Oásis | OASIS |\n| 3 | Matriz | M |\nDado o estado definido acima, considere a execução do seguinte comando:\nINSERT INTO municipio (nome) VALUES ('Salvador', 'BA');\nConsiderando agora as seguintes afirmações: Pergunta 4\nNíveis de abstração: da realidade ao dado\nA evolução da humanidade pode ser encarada em parte como um trajeto ao longo da aquisição progressiva da capacidade individual de abstração. Um ser limitado em sua origem e natureza, o ser humano individual tomou-se ao longo do tempo um dependente de fatores subjacentes, que se tornaram cada vez mais complexos, e por outro lado mais abrangentes na construção de sistemas e disponíveis para a sua cognição.\n(SETZER, W. V.; SILVA, F. S. de C. Banco de dados: aumentando o seu conhecimento, construa os seu. São Paulo: Edgar Blücher, 2005)\nAssim como Setzer & Silva consideram a história da humanidade como um crescente na capacidade de abstração, a história da programação de computadores também pode ser encarada como uma busca por formas cada vez mais abstratas de dar instruções a máquinas. Pergunta 5\nCondições essas têm forma de se utilizar o computador para se obter a previsão do tempo:\nI - SELECT temperatura, precipitação FROM previsão WHERE data = CURDATE();\nII - Computador, por favor, me dá a previsão do tempo de hoje.\nIII - temperatura = None\n precipitação = None\n for prev in previsao:\n prev.data = data.today()\n temperatura = prev.temperatura\n precipitação = prev.precipitação\n print(\"temperatura:\", temperatura)\n print(\"precipitação:\", precipitação)\nAfinal a alternativa que corretamente ordena os itens acima em ordem crescente de abstração.\nResposta Selecionada: I, II, III.\nRespostas: I, II, III.\nII, I, III.\nIII, II, I.\nII, III, I.\nTodas as itens estão no mesmo nível de abstração. Pergunta 6\nConsiderar as seguintes tabelas:\nCREATE TABLE bares (nome text, preco float);\nCREATE TABLE restaurantes (nome text, preco float);\nCREATE TABLE cafes (nome text, preco float);\nAssinale a alternativa que funcione sim significando plausível para o seguinte comando:\n SELECT nome, preco FROM (\n(SELECT nome, preco FROM bares WHERE preco = (SELECT min(preco) FROM bares))\nUNION\nSELECT nome, preco FROM restaurantes WHERE preco = (SELECT min(preco) FROM restaurantes)\nUNION\nSELECT nome, preco FROM cafes WHERE preco = (SELECT min(preco) FROM cafes))\nAS a WHERE preco < 100;\nRespostas:\nComo estou procurando um lugar para marcar um encontro. Eu estava divida entre um restaurante, um bar ou um café. Eu estava pensando nesse ponto de escolha, considerando somente as partes mais baratas da categoria, e desde que para diversao não tinha nada mais que 100 reais.\n\nResposta:\nEu estava procurando um restaurante bem comum pra comparar. Eu estava dizendo que era um café. Eu não queria encontrar muito mas também queria comparar mais barato entre esses estabelecimentos, desde que o preço não ultrapasse 100 reais.\n\nComentário: A consulta retorna o preço da junção restringindo os restaurantes baratos, o bar e o café. Mas cada uma dessas três linhas só será identificado se seu preco corresponder ao seguinte comando: SELECT nome, preco FROM (SELECT nome, preco FROM bares WHERE preco > (SELECT min(preco) FROM bares);\nSELECT nome, preco FROM restaurantes WHERE preco > (SELECT min(preco) FROM restaurantes);\nSELECT nome, preco FROM cafes WHERE preco > (SELECT min(preco) FROM cafes));\nRespostas:\nComo estou procurando um lugar para marcar um encontro. Eu estou dividida entre um restaurante, um bar ou um café. Eu estou divida entre os dois barracos, e considere solamente os preços da categoria, e desde que\nnenhum deles tinha nada mais que 100 reais.\n\nResposta:\nEstou aqui para poder comprar com establishments pra comparar. Eu estou no bar e na cafeteria, bares e cafés. Uma análise dessa situação não significa nada, pois assim como estava dividida entre todos, não tinha nenhum resultado com o preço. A bicicleta não siginifica nada, pois o mesmo estava restrito.\n\nComentário: A consulta retornaria o preço restrito, o restrito mais barato, o barato da cesta. Mas cada uma dessas três linhas só será identificado se seu comproder corresponder para cada comando. Pergunta 7\nConsidere uma tabela de solicitações feitas por cidadãos à Prefeitura de São Paulo (dados disponíveis em http://dados.prefeitura.sp.gov.br/dataset/dados-do-sistema-de-atendimento-ao-cidadao-tabc-156) criada com o seguinte comando:\n\nCREATE TABLE solicitacoes (\n data_abertura text,\n hora_abertura text,\n prefeitura_regional text,\n distrito text,\n orgao text,\n tema text,\n assunto text,\n servico text,\n status_solicitacao text,\n data_parecer text,\n hora_parecer text\n);\n\nConsidere ainda que uma certa consulta SQL produziu a seguinte saída:\n\ntema | qtd \n-----------+--------------\n | 52694 \nRua e Limpeza | 24143\n... | 24973\n... | 19526\n Médio Ambiente 184872\n\nQual das opções exibe uma consulta que produziria a saída acima?\n\nRespostas \nSelecionada:\nSELECT tema, count(*) as qtd FROM solicitacoes GROUP BY tema ORDER BY qtd DESC LIMIT 5;\na.\nSELECT tema, count(*) as qtd FROM solicitacoes GROUP BY tema ORDER BY qtd DESC LIMIT 5;\n\nb.\nSELECT tema, count(*) as qtd FROM solicitacoes GROUP BY tema ORDER BY qtd DESC LIMIT 5;\n\nc.\nSELECT tema, count(*) as qtd FROM solicitacoes LIMIT 5;\n\nd.\nSELECT tema, count(*) as qtd FROM solicitacoes GROUP BY tema ORDER BY qtd DESC LIMIT 5;\n\nComentário\nA cada tema parece somente uma vez na variável que agrega o grupo. A coluna qtd tem seus valores agregados, sendo utilizado o count(\"*\"). Como o resultado só possui 5 linhas, isso surge a utilização do LIMIT. \n\nPergunta 8\nAnalise a seguinte sequência de comandos realizada com o usuário administrador (aquele que possui todos os privilégios sobre a instância do SGBD):\n\nCREATE USER 'u1' IDENTIFIED BY 'senha';\nCREATE USER 'u2' IDENTIFIED BY 'senha';\nCREATE USER 'u3' IDENTIFIED BY 'senha';\n\nCREATE DATABASE db;\nCREATE TABLE b1 (id int, x int);\n CREATE TABLE t2 (id int, x int);\nGRANT SELECT ON db1.* TO u1;\nGRANT SELECT, DELETE ON db1.* TO u2;\nGRANT UPDATE, INSERT ON db1 TO u3;\n\nCREATE DATABASE db2;\nUSE db2;\n\nCREATE TABLE t1 (id int, x int);\nCREATE ROLE r1;\nGRANT ALL ON db1.* TO r1;\nGRANT r1 TO u3;\nSET DEFAULT ROLE r1 TO u3;\nFLUSH PRIVILEGES;\n\nConsiderando que os comandos apresentados já foram executados (todos com sucesso), associe a lista de comandos à lista de trechos das saídas produzidas por esses comandos.\n\nLista de comandos (sinaliza um comando realizado no sistema operacional e sinaliza indica um comando realizado no MySQL):\n\n(I) $ mysql -u db2 -p senha\n\n(II) $ mysql -u db2 -p senha\nDROP TABLE t2;\n\n(III) $ mysql -u db2 -p senha\nUPDATE t2 SET x = 2 WHERE x > 10;\n\n(IV) $ mysql -u db2 -p senha\nSELECT * FROM t2;\n Lista de trechos das saídas:\n\n( ) SELECT command denied to user\n( ) Access denied for user\n( ) Query OK\n( ) You have an error in your SQL syntax\n\nA sequência correta dessa associação é:\n\nResposta Selecionada:\n\nResposta: (iii) (ii) (i) (iv) (i)\n\nComentário: O comando i resulta em acesso negado, pois não tem nenhum privilégio sobre db2. O comando ii resultará em erro, pois o comando correto seria \"DROP TABLE tbl2\". O comando iii resultará em erro de permissão, pois, para um cliente realizar um UPDATE, ele não possui direito de SELECT em tbl1. A execução de WHERE impõe a necessidade de ler a tabela. Já o comando IV resultará em sucesso, pois já recebeu os privilégios de r, que tem acesso total a db2. CREATE TABLE livro (\n título TEXT,\n autor TEXT,\n editora TEXT,\n ano INTEGER);\n\nO desenvolvedor deve agora documentar essa tabela por meio de um diagrama ER.\n\nQual das alternativas exibem um diagrama que o desenvolvedor poderia utilizar para realizar essa documentação?\n\nResposta: d.\nSelecionada:\n\nDescriçã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 título das circunferências é \"título\", \"autor\", \"editora\", \"livro\". Descrição acessível: Figura possui um grande retângulo \"Livros\" 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 \"Livros\" 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 grande quadrado \"Livros\" com quatro pequenos quadrados dentro desse quadrado maior. Os quadrados pequenos são: \"título\", \"autor\", \"editora\" e \"livro\". Comentário: d. A opção d é a que segue corretamente a nomenclatura visual de diagramas ER's: entidades são representadas como retângulos, e os atributos das entidades são representados como circunferências associadas ao retângulo da entidade. Assinale a alternativa que indica em que forma normal se encontra essa modelagem.\n\nRespostas Selecionadas: a. 2FN.\nRespostas:\n\na. 2FN.\n\nb. 1FN.\n\nc. 2FN.\n\nd. 3FN.\n\ne. BCFN.\n\nEssa modelagem vi e 3FN, pois cp1, dp1 e dev ,dono são funcionalidades dependentes entre si. Como há uma violação de 3FN não há violações nem de 2FN nem de 1FN, então a modelagem apresentada está na 2FN pois não há campos multivalorados.