·

Análise e Desenvolvimento de Sistemas ·

Bases de Dados

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

Fazer Pergunta

Texto de pré-visualização

QUIZ - BANCO DE DADOS\n\n2103 - BANCO DE DADOS\n\nPERGUNTA 1\n\n1. 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.\n\nAssinale a alternativa que corresponda a uma modelagem para esse problema que esteja na BCFN.\n\na. Descrição acessível: tabela estadia com campos início, fim e placa_veículo; tabela veículo com campos placa, marca-modelo-cor e cpf_dono; estadia.placa_veículo é chave estrangeira para veículo.placa.\n\nb. Descrição acessível: tabela veículo com campos placa, marca, modelo, cor, cpf_dono, inícios_estadias e fins_estadias; tabela dono com campos cpf e nome completo; estadia.cpf_dono é chave estrangeira para dono.cpf.\n\nc. Descrição acessível: tabela estadia com campos início, fim, duração e placa_veículo; tabela veículo com campos placa, marca, modelo, cor e cpf_dono; tabela dono com campos cpf e nome; estadia.placa_veículo é chave estrangeira para veículo.placa; veículo.cpf_dono é chave estrangeira para dono.cpf.\n\nd. Descrição acessível: tabela estadia com campos início, fim e placa_veículo; tabela veículo com campos placa, marca, modelo, cor e cpf_dono; tabela dono com campos cpf, nome_completo, primeiro_nome e sobre_nome; estadia.placa_veículo é chave estrangeira para veículo.placa; veículo.cpf_dono é chave estrangeira para dono.cpf. PERGUNTA 2\n\n1. Com a SQL podemos utilizar sub-selects, que são \"selects dentro de selects\". Considere o exemplo:\n\n> select * from municipio;\n+----+--------------+-----+\n| id | nome | uf |\n+----+--------------+-----+\n| 1 | São Paulo | SP |\n| 2 | Osasco | SP |\n| 3 | Mateiros | TO |\n| 4 | Salvador | BA |\n+----+--------------+-----+\n\n> select * from municipio where uf = 'SP';\n+----+--------------+-----+\n| id | nome | uf |\n+----+--------------+-----+\n| 1 | São Paulo | SP |\n| 2 | Osasco | SP |\n+----+--------------+-----+\n\n> select count(*) from (select * from municipio where uf = 'SP') as subtab;\n+----------+\n| count(*) |\n+----------+\n| 2 |\n+----------+\n\nConsidere agora a existência da tabela voos, com um voo por registro e com a coluna data, representando a data do voo. Qual dos seguintes comandos exibe corretamente todos os dados dos voos ocorridos na data do voo mais antigo registrado?\n\na. SELECT * FROM voos WHERE data = (SELECT min(data) FROM voos) as data_mais_antiga;\n\nb. SELECT * FROM voos WHERE data = (SELECT min(data)) as data_mais_antiga;\n\nc. SELECT * FROM voos WHERE data = min(data);\n\nd. SELECT min(data) FROM voos;\n\ne. SELECT * FROM voos WHERE min(data);\n\nPERGUNTA 3\n\n1. Considere a tabela abaixo, denominada tab1 e contendo as colunas col1 e col2.\n\ncol1 col2\n10 1\n20 2\n30 3\n\nDescrição acessível: Tabela com duas colunas: col1 e col2. Conteúdo composto apenas de números.\n\nA SQL possui um recurso que possibilita a execução de operações aritméticas entre as colunas, como demonstra a seguinte consulta:\n\n> SELECT col1 + col2 as soma FROM tab1;\n\nsoma\n11\n22\n33\n\nConsidere 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 1. Infodeck introdutório aos bancos de dados NoSQL\n\nEste texto fornece uma breve introdução aos bancos de dados NoSQL. Nossa intenção é explicar ao público técnico-gerencial por que os bancos de dados NoSQL são importantes. Descrevemos por que os bancos de dados relacionais têm sido tão quantidade_vitimas_fatais.\n\nAssinale 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.\n\n☐ a.\n(SELECT quantidade_vitimas_fatais FROM acidentes_aereos) / (SELECT quantidade_passageiros FROM acidentes_aereos) * 100;\n\n☐ b.\nSELECT porcentagem_sobreviventes FROM acidentes_aereos;\n\n☐ c.\nSELECT IN acidentes_aereos VALUE quantidade_vitimas_fatais / quantidade_passageiros * 100 as porcentagem_sobreviventes;\n\n☐ d.\nSELECT quantidade_vitimas_fatais FROM quantidade_passageiros * 100 IN acidentes_aereos;\n\n☑ e.\nSELECT quantidade_vitimas_fatais / quantidade_passageiros * 100 as porcentagem_sobreviventes FROM acidentes_aereos;\n\nPERGUNTA 4\n\n1. 6.1.2.1 Orientações do usuário final para a segurança de senha 1. O diagrama a seguir representa uma modelagem ER para bandas de rock.\n\nDescriçã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\" por 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.\n\nConsidere as seguintes afirmações:\n\nI - Uma banda de rock pode ter vários guitarristas.\nII - Uma banda de rock deve possuir exatamente quatro músicos.\nIII - Uma banda de rock não pode possuir mais que um baterista.\nIV - Uma banda de rock é obrigada a ter um baixista.\nV - Uma banda de rock não pode possuir uma flautista.\nVI - Um músico pode representar a várias bandas.\n\nPara um banco de dados que utilize a modelagem apresentada no diagrama, assinale a alternativa que representa as afirmativas verdadeiras.\n\n☑ b. I, III, IV e V.\n☐ a. I, III, IV e VI.\n☐ c. I e VI.\n☐ d. I, III, IV, V e VI.\n☐ e. II, III e IV. dominantes e quais forças levaram o NoSQL a quebrar esse domínio. Discutimos os principais benefícios de uma abordagem NoSQL, mas enfatizamos que os bancos de dados relacionais ainda têm um grande papel a desempenhar, por isso nossa ênfase na persistência poliglota.\nFOWLER, M.; SADALAGE, P. Infodeck introdutório aos bancos de dados NoSQL. 2012. https://martinfowler.com/articles/nosql-intro. Acesso em: 15 jul. 2020.\n\nAssinale a alternativa que melhor explica o que os autores do texto citado querem dizer com “persistência poliglota”.\n\na. “Persistência poliglota” diz respeito aos vários tipos de bancos NoSQL disponíveis (excluindo, portanto, os bancos relacionais).\n\nb. O sucesso do movimento NoSQL se dá principalmente porque esses novos bancos suportam uma grande variedade de linguagens de programação (Java, .NET, Python, Ruby, etc.).\n\nc. Novos sistemas continuarão usando os SGBDs relacionais, mas ao mesmo tempo utilizarão outros bancos NoSQL para propósitos específicos.\n\nd. A “persistência poliglota” consiste numa Babel de bancos NoSQL que não é sustentável a longo prazo.\n\ne. A persistência poliglota é uma camada genérica de inferência entre os bancos de dados e as aplicações.\n\nPERGUNTA 7\n1. Níveis de abstração: da realidade ao dado\nA evolução da humanidade pode ser encarada em parte como um trajeto no sentido da aquisição progressiva da capacidade individual de abstração. De um ser intimamente ligado ao universo e em particular à natureza, o ser humano individual tornou-se ao longo do tempo um ente independente, isolado e com cada vez maior capacidade de introspecção objetiva, isto é, sem que este dependa de fatores subjetivos, temporais e individuais.\n(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.) Assim 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.\n\nConsidere essas três formas de se utilizar o computador para se obter a previsão do tempo:\n\n|- SELECT temperatura, precipitacao FROM previsao WHERE data = CURDATE();\n\nII - Computador, por favor, me dê a previsão do tempo de hoje.\n\nIII -\n\ntemperatura = None\nprecipitacao = None\nfor prev in anteriores:\n if prev.data = date.today():\n temperatura = prev.temperatura\n precipitacao = prev.precipitacao\nprint(“temperatura=”, temperatura)\nprint(“precipitacao=”, precipitacao)\n\nAssinale a alternativa que corretamente ordena os itens acima em ordem crescente de abstração.\n\na. I, II, III.\n\nb. III, II, I.\n\nc. II, I, III.\n\nd. Todas os itens estão no mesmo nível de abstração.\n\ne. III, I, II. PERGUNTA 8\n1. Considere a seguinte modelagem feita para o banco de dados de um sistema de estacionament:\n\nDescrição acessível: tabela estada com campos inicio, fim e placa_veiculo; tabela veiculo com campos placa, marca, modelo, cor, cpf_dono e nome_dono; estada.placa_veiculo é chave estrangeira para veiculo.placa.\n\nAssinale a alternativa que indica em que forma normal se encontra essa modelagem.\n\na. 1FN.\n\nb. 2FN.\n\nc. 3FN.\n\nd. BCFN.\n\ne. Essa modelagem não atende nem à 1FN. IV) SELECT p.nome as nome_paciente, m.nome as nome_medico, c.data FROM paciente p INNER JOIN consulta c INNER JOIN medico m ON c.id_paciente = p.id AND c.id_medico = m.id WHERE data = curdate();\nObs: \"curdate()\" retorna a data corrente.\n\nAssinale a opção que identifica corretamente os resultados obtidos para essas consultas.\n\n a. As consultas I e II terão o mesmo resultado. As consultas III e IV possuem erros de sintaxe.\n \nb. As consultas I e II terão um mesmo resultado, enquanto as consultas III e IV terão um outro resultado (o resultado de III será o mesmo de IV). Todas as consultas são válidas.\n \nc. As consultas I e II terão um mesmo resultado, enquanto as consultas III e IV terão resultados diferentes (o resultado de III difere de I, II e IV; e o resultado de IV difere de I, II e III). Todas as consultas são válidas.\n \nd. As consultas I, II, III e IV terão o mesmo resultado, desde que todos os pacientes e médicos estejam vinculados a consultas marcadas para a data corrente.\n \ne. As consultas I, II, III e IV terão o mesmo resultado, independentemente do conteúdo das tabelas.\n\nPERGUNTA 10\n1. Considere a seguinte tabela:\n\nTabela de municípios:\n\nnome uf populacao area\nSão Paulo SP 12 252 023 1 521\nBelo Horizonte MG 2 512 070 331\nSorocaba SP 679 378 450