Prévia do material em texto
Banco de Dados para concursos públicos Minicurso Aula 1 Prof. Diogo Santana Banco de Dados para Concursos Públicos Minicurso Aula 1 2 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Olá, seja bem-vindo(a) à aula 1 do Minicurso de Banco de Dados para concursos públicos. SUMÁRIO INFORMAÇÕES INICIAIS .................................................................................. 2 Apresentação do Professor ........................................................................... 3 Metodologia de Ensino ................................................................................. 4 Conteúdo do Minicurso ................................................................................. 4 Cronograma do Minicurso ............................................................................. 5 CONTEÚDO DA AULA 1 .................................................................................... 5 1. Conceitos básicos de Banco de Dados ......................................................... 6 2. Modelagem de Banco de Dados ............................................................... 14 ESQUEMAS E RESUMOS DA AULA .................................................................... 26 QUESTÕES COMENTADAS .............................................................................. 33 QUESTÕES – SEM COMENTÁRIOS .................................................................... 42 GABARITO ................................................................................................... 47 INFORMAÇÕES INICIAIS Banco de Dados para Concursos Públicos Minicurso Aula 1 3 de 49 Prof. Diogo Santana www.cdfconcursos.com.br @prof.diogosantana Prof. Diogo Santana Diogo Santana Apresentação do Professor Olá concurseiro(a), tudo bem? Sou o Professor Diogo Santana de Banco de Dados aqui no CDF Concursos, a minha jornada de estudos para concursos iniciou aos 15 anos quando ingressei no Colégio Naval em Angra dos Reis, posteriormente prestei o vestibular e ingressei no renomado Instituto Militar de Engenharia, onde me graduei em 1° lugar no curso de formação e graduação em Engenharia Cartográfica e em paralelo me graduei em Sistema de Computação pela Universidade Federal Fluminense em 2009. Poucos meses após a minha formatura, prestei o concurso para o cargo de Especialista em Regulação da Agência Nacional de Energia Elétrica, cargo que atualmente ocupo e estou lotado na área de gestão de dados dentro da TI, atuando especificadamente com Administração de Dados, Business Intelligence e Geoprocessamento. Agora meu papel é ajudar você conquistar a sua tão sonhada aprovação! “Tem poder quem age e mais poder ainda quem age na direção certa.” Paulo Vieira Forte abraço e bons estudos! Caso você deseje acompanhar as atualidades, dicas e questões para concursos relacionadas ao estudo de Banco de Dados, siga minhas mídias sociais: Banco de Dados para Concursos Públicos Minicurso Aula 1 4 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Metodologia de Ensino O minicurso da disciplina Banco de Dados é uma oportunidade de apresentar o meu trabalho para você que está almejando a sua tão sonhada aprovação, como também fazer uma boa revisão e ganhar alguns pontinhos da disciplina de Banco de Dados. Eu escolhi três temas que são cobrança certa na sua prova de banco de dados, a metodologia de ensino escolhida foi de aliar o ensino teórico com as questões que estão sendo cobradas pelas principais bancas, para isso vou utilizar as principais referências bibliográficas de forma que vai perceber que a cobrança das questões que vamos resolver as vezes são trechos quase que literais retirados dos livros que estarei utilizando. Além das questões vou elaborar alguns esquemas para que na hora da sua revisão você tenha facilidade de relembrar os pontos dos assuntos mais cobrados em provas e para os assuntos que trazem um nível mais elevado de complexidade será gravado vídeos aulas para você compreender melhor. Conteúdo do Minicurso Nosso minicurso inicia com a primeira aula te contextualizando no ambiente de banco de dados com seus conceitos básicos, modelagem, arquitetura e fases de um projeto de banco de dados. Depois iremos estudar a linguagem SQL que é um dos assuntos mais cobrados na disciplina de banco de dados, estudando a sua estrutura básica para elaborar consultas para recuperação de dados. Por fim, vamos ver os conceitos fundamentais de Business Intelligence e a sua arquitetura para tratar dados analíticos. Banco de Dados para Concursos Públicos Minicurso Aula 1 5 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Cronograma do Minicurso CONTEÚDO DA AULA 1 Nesta aula, será abordado o tópico “Conceitos básicos e modelagem de banco de dados”, exigido pelos editais que cobram a disciplina Banco de Dados. AULA CONTEÚDO DATA Aula 1 Conceitos básicos e modelagem de Banco de Dados Disponível Aula 2 Linguagem SQL Disponível Aula 3 Conceitos e Fundamentos de Business Intelligence Disponível Padronização de siglas - Sistema de Gerenciamento de Banco de Dados - SGBD - Sistema de Banco de Dados - SBD - Banco de Dados – BD - Diagrama de Entidade e Relacionamento - DER - Modelo de Entidade e Relacionamento – MER - Administrador de Dados – AD - Administrador de Banco de Dados – DBA Banco de Dados para Concursos Públicos Minicurso Aula 1 6 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 1. Conceitos básicos de Banco de Dados A primeira coisa que você deve aprender no estudo da disciplina de banco de dados é a definição de dados e de banco de dados. ➢ Dados são fatos conhecidos que podem ser registrados e possuem significado implícito. ➢ Banco de dados é uma coleção de dados relacionados. ➢ Banco de dados é um repositório ou recipiente para uma coleção de arquivos de dados computadorizados. Dados Fatos conhecidos Fatos que podem ser registrados Fatos com significado implícito Banco de Dados Coleção de dados relacionados Coleção de dados computadorizados Armazenamento de dados Banco de Dados para Concursos Públicos Minicurso Aula 1 7 de 49 Prof. Diogo Santanawww.cdfconcursos.com.br Agora, que você aprendeu a definição de dados e banco de dados é importante saber que existem três características que são consideradas fundamentais para um banco de dados. ➢ Representação do mundo real: Um banco de dados deve representar um aspecto do mundo real (minimundo ou universo do discurso). ➢ Dados com significado inerente: Um banco de dados é uma coleção logicamente coerente de dados. ➢ Dados com finalidade específica: Um banco de dados é projetado para um propósito específico. QUESTÃO DE PROVA: CGM da Prefeitura de João Pessoa/PB - Auditor Municipal de Controle Interno – Desenvolvimento de Sistemas – Um banco de dados é uma coleção de dados que são organizados de forma randômica, sem significado implícito e de tamanho variável, e projetados para atender a uma proposta específica de alta complexidade, de acordo com o interesse dos usuários. Resolução: Conforme visto na explicação anterior, um banco de dados é uma coleção logicamente coerente de dados e não uma variedade aleatória ou randômica de dados, além disso os dados tem um significado inerente ou implícito. Gabarito: Errado Representação do mundo real •Minimundo •Universo do discurso Significado inerente •Coleção lógica de dados Finalidade específica •Banco de dados com propósito específico Banco de Dados para Concursos Públicos Minicurso Aula 1 8 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Você concorda que os dados podem ser armazenados em arquivos no formato texto, ou numa planilha, ou em banco de dados, logo existem características que diferenciam a abordagem de banco de dados da abordagem do sistema de arquivos. Portanto, as principais características da abordagem de banco de dados que diferem do armazenamento de dados em sistemas de arquivos são as seguintes: É muito comum de maneira informal nos referíamos banco de dados para todo o ambiente de armazenamento de dados, sejam os programas de computador envolvidos ou o armazenamento de dados propriamente dito. C ar ac te rí st ic as d a A b o rd ag em d e B an co d e D ad o s Natureza de autodescrição de um sistema de banco de dados. Isolamento entre programas e dados, e abstração de dados. Suporte a múltiplas visões dos dados. Compartilhamento de dados e processamento de transação multiusuário. Banco de Dados para Concursos Públicos Minicurso Aula 1 9 de 49 Prof. Diogo Santana www.cdfconcursos.com.br A figura seguinte é de extrema importância para a sua prova, pois nela você consegue identificar importantes componentes do ambiente de banco de dados. Iniciando a explicação da figura anterior de um ambiente mais externo para o seu interior existem: ➢ usuários/programadores: realizam consultas dos dados armazenados e operam os programas de aplicação que utiliza os dados armazenados. ➢ Sistema de Banco de Dados: é todo o ambiente de banco de dados, considerado a soma do banco de dados propriamente dito e o sistema de gerenciamento de banco de dados (SGBD). Banco de Dados para Concursos Públicos Minicurso Aula 1 10 de 49 Prof. Diogo Santana www.cdfconcursos.com.br ➢ Sistema de Gerenciamento de Banco de Dados (SGBD): é o conjunto de programas de computador responsável para gerenciar todo o funcionamento do banco de dados. ➢ Banco de dados armazenado: Banco de dados propriamente dito, onde os dos dados são armazenados uma coleção lógica de dados. ➢ Catálogo de metadados (dicionário de dados): armazenamento das descrições das estruturas, restrições e especificação dos dados armazenados. Iremos detalhar um pouco mais o componente do SGBD que não é um mero software que permite apenas processar consulta e acessar os dados armazenados num banco de dados, ele possui outras responsabilidades no ambiente de banco de dados. BD SGBD SBD Banco de Dados para Concursos Públicos Minicurso Aula 1 11 de 49 Prof. Diogo Santana www.cdfconcursos.com.br O SGBD pode ser definido como um sistema de software que facilita o processo de definição, construção, manipulação e compartilhamento do banco de dados entre diversos usuários e aplicações. Além dessas funções importantes relacionados aos usuários e aplicações, podemos acrescentar no rol de funções do SGBD a proteção e manutenção do banco de dados. As palavras-chaves destacadas na definição de SGBD podem ser detalhadas da seguinte forma: SGBD Definição: Especifica os tipos, estruturas e restrições dos dados armazenados Construção: Processo de armazenar os dados em algum meio controlado peo SGBD Manipulação: Consulta do banco de dados para recuperar e atualizar dados específicos. Compartilhamento: Permite que diversos usuários e programas acessem os dados simultaneamente. Proteção: Proteção contra defeitos de hardware e software, e segurança contra tentativa de acessos não autorizados. Manutenção: Um banco de dados é feito para persistir no decorrer do tempo, o SGBD deve ser capaz de manter o banco de dados no tempo. Banco de Dados para Concursos Públicos Minicurso Aula 1 12 de 49 Prof. Diogo Santana www.cdfconcursos.com.br QUESTÃO DE PROVA: TCE PB – Auditor de Contas Públicas – área: Demais Áreas - A respeito de SGBDs, assinale a opção correta. (Adaptada) Um SGBD é um software que não prevê as funções de definição, recuperação e alteração de dados, sendo essa tarefa a função básica de um sistema de banco de dados. Resolução: Conforme a definição, o SGBD prevê as características de definição e manipulação dos dados que incluem as funções de recuperação e alteração de dados. Gabarito: Errada Agora, que você estudou a definição do SGBD é importante levar para a sua prova as principais funcionalidades do SGBD. SGBD Controle de Concorrência Restrição de Integridade Facilidade e Otimização de Consultas Recuperação após falhas em transações Segurnaça de acesso Garantia de consistência nos Dados Banco de Dados para Concursos Públicos Minicurso Aula 1 13 de 49 Prof. Diogo Santana www.cdfconcursos.com.br ➢ Controle de concorrência: o SGBD tem a funcionalidade de realizar o controle de concorrência de acesso multiusuário entre as transações que atualizam os dados armazenados. ➢ Restrição de integridade: o SGBD é responsável por manter as restrições de integridadedo banco de dados para ele estar sempre num estado válido. ➢ Facilidade e Otimização de consultas: o SGBD deve ter a capacidade de permitir ao usuário de manipular e realizar consultas simples e complexas sobre os dados, além de realizar Tuning para otimizar o desempenho das consultas. ➢ Recuperação após falhas em transações: o SGBD tem a capacidade de retornar o banco de dados a um estado válido anterior após falhas em transações. ➢ Segurança de acesso: o SGBD deve permitir que o administrador de banco de dados (DBA) realize controle de acesso aos dados, implementando papeis e bloqueando tentativa de acessos não autorizados. ➢ Garantia de consistência nos Dados: o SGBD tem que manter o banco de dados em um estado válido, garantindo que os dados armazenados são consistentes com a realidade que eles representam. Banco de Dados para Concursos Públicos Minicurso Aula 1 14 de 49 Prof. Diogo Santana www.cdfconcursos.com.br QUESTÃO DE PROVA: SEFAZ RS - Auditor Fiscal de Receita Estadual – As funções de um sistema de gerenciamento de banco de dados (SGBD) incluem A) gerenciar a integridade de dados, o dicionário e o armazenamento de dados, bem como a memória do computador enquanto o SGBD estiver em execução. B) transformar e apresentar dados, controlar o acesso de multiusuário e prover interfaces de comunicação do banco de dados. C) gerenciar o becape e a recuperação dos dados, bem como o escalonamento de processos no processador por meio do banco de dados. D) gerenciar o sistema de arquivos e a segurança do banco de dados. E) gerenciar a entrada e saída de dispositivos, linguagens de acesso ao banco de dados e interfaces de programação de aplicações. Resolução: Conforme visto, o SGBD através das suas consultas permite transformar e apresentar dados, e prover uma interface de comunicação do banco de dados e além de realizar o controle de concorrência para controlar o acesso multiusuário. Gabarito: B Conceitos Básicos de Banco de Dados 2. Modelagem de Banco de Dados Agora que estudamos os principais conceitos de banco de dados, vamos estudar a modelagem de dados que possibilita diferentes tipos de visões dos usuários, onde eles podem se preocupar com o seu nível de representação dos dados desejado. Banco de Dados para Concursos Públicos Minicurso Aula 1 15 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Assim, um usuário normal está mais preocupado com os dados que ele pode recuperar e utilizar nas suas mais diversas tarefas do dia a dia, tais como gerar um relatório para um chefe ou mesmo um cálculo de algum valor que desejar. O projetista de banco de dados também conhecido como administrador de dados (AD) está mais interessado em saber como os dados vão estar armazenados e relacionados, bem como descrever as suas estruturas. Já o administrador de banco de dados (DBA) tem maior interesse em saber como os dados estão fisicamente organizados e as suas estruturas internas. Podemos perceber que de acordo com o nível de usuário bem como seu conhecimento técnico sobre banco de dados é interessante ter diferentes abordagem da forma de representar os dados. Assim, podemos definir modelo de dados com uma coleção de conceitos utilizadas para descrever a estrutura de um banco de dados, que basicamente são os tipos, relacionamentos e restrições que se aplicam aos dados. Então, vimos que de acordo com diferentes tipos de usuários podemos representar os dados de diferentes formas, assim podemos dividir os modelos de dados em diferentes categorias que representam a estrutura do banco de dados que estão relacionados. M o d el o d e D ad o s Descrição dos dados Relacionamento dos dados Restrição de consistência Tipos de dados Banco de Dados para Concursos Públicos Minicurso Aula 1 16 de 49 Prof. Diogo Santana www.cdfconcursos.com.br ➢ Modelo de alto nível ou conceitual: são aqueles mais próximos da forma como os usuários finais percebem os dados. ➢ Modelo de nível representativo ou de implementação: são aquelas fácies de ser entendidos pelos usuários finais, mas não muito distante de como os dados são organizados e armazenados. ➢ Modelo de baixo nível ou físico: são aqueles que descrevem os detalhes de como os dados estão armazenados no computador. Com o intuito de formalizar a separação das camadas de abstração de dados, foi proposta a arquitetura em três camadas como forma de implementar as características de autodescrição dos dados, suporte a múltiplas visões e isolamento entre programas e dados (abstração de dados) da abordagem do banco de dados frente aos sistemas de arquivos. A arquitetura em três esquemas pode ser representada através da figura a seguir: Banco de Dados para Concursos Públicos Minicurso Aula 1 17 de 49 Prof. Diogo Santana www.cdfconcursos.com.br ➢ Nível externo: também conhecido como nível de visão ou lógico de usuário, descreve o esquema externo do banco de dados que interessa a determinado grupo de usuários. ➢ Nível conceitual: também conhecido como nível intermediário, lógico ou lógico de comunidade, descreve o esquema conceitual do banco de dados que se concentra na descrição de entidades, tipos de dados, relacionamentos, restrições e operações com usuários. ➢ Nível interno: também conhecido como nível de armazenamento, descreve o esquema interno do banco de dados que se concentra na discrição da estrutura de armazenamento físico do banco de dados. Para a sua prova você não pode confundir os níveis da arquitetura em três camadas com a do modelo de dados, elas são esquematizadas na figura a seguir. Arquitetura em três camadas Externo ou visão (esquema externos) Conceitual ou lógico (esquema conceitual) Interno ou armazenamento (esquema interno) Modelo de Dados Conceitual ou alto nível (esquema conceitual) Representação ou implementação (esquema lógico) Baixo nível ou físico (esquema interno) Banco de Dados para Concursos Públicos Minicurso Aula 1 18 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Outra característica muito importante e bastante cobrada em provas de concurso público trata-se do mapeamento entre os níveis de abstração e a independência de dados. Existem dois tipos de mapeamentos, o mapeamento externo/conceitual que define a correspondência entre a visão externa específica e a visão conceitual; e o mapeamento conceitual/interno que define a correspondência entre a visão conceitual e a do banco de dados armazenado. A independência de dados também se divide em dois tipos, a independência lógica de dados que consiste na capacidadede alterar o esquema conceitual sem ter que alterar os esquemas externos ou programas de aplicação; e a independência física de dados que consiste na capacidade de alterar o esquema interno sem ter de alterar o esquema conceitual. Banco de Dados para Concursos Públicos Minicurso Aula 1 19 de 49 Prof. Diogo Santana www.cdfconcursos.com.br QUESTÃO DE PROVA: TCE PA – Auditor de Controle Externo – Área: Informática – Com relação a sistemas gerenciadores de bancos de dados (SGBD), julgue o próximo item. No nível conceitual da arquitetura de três camadas de banco de dados, cada esquema externo descreve a parte do banco que interessa a determinado grupo de usuários e oculta desse grupo o restante do banco de dados. Resolução: Exatamente como visto na teoria, o esquema externo descreve a parte do banco de dados em que um grupo de usuários em particular está interessado e oculta desse grupo o restante do banco de dados. Gabarito: Correta Para você ter uma visão mais completa dos modelos de dados, é importante ter conhecimento das principais fases do projeto de banco de dados, na figura a seguir ela reporta os principais passos. Banco de Dados para Concursos Públicos Minicurso Aula 1 20 de 49 Prof. Diogo Santana www.cdfconcursos.com.br O projeto de desenvolvimento de aplicações normalmente é abordado na disciplina de engenharia de software, aqui na nossa disciplina focaremos a parte de projeto de banco de dados que possui as seguintes principais fases. Percebemos que os resultados das principais fases do projeto de banco de dados é um produto que leva em conta o respectivo grupo de usuários que está envolvido com aquela representação. ➢ Levantamento e análise de requisitos: realizada pelo analista de requisitos que através de diversas técnicas como entrevistas ou preenchimento de questionários, por exemplo, tem como resultado um conjunto de requisitos dos usuários escrito de forma concisa. ➢ Projeto conceitual: é a descrição concisa dos requisitos de dados dos usuários utilizando o modelo de entidade e relacionamento (MER) que detalha os tipos de entidades, relacionamentos e restrições, tem como resultado o esquema conceitual. ➢ Projeto lógico: essa etapa é a implementação do esquema conceitual usando o SGBD comercial, assim ele já vai diferenciar de acordo com o tipo de SGBD que está utilizando, nessa fase tem o esquema lógico como resultado. ➢ Projeto físico: essa é a última etapa do projeto de banco de dados durante a qual são definidas as estruturas de armazenamento internas, os parâmetros físicos, índices e os caminhos de acesso aos arquivos do banco de dados. Levantamento e análise de requisitos Projeto Conceitual Projeto Lógico Projeto Físico Banco de Dados para Concursos Públicos Minicurso Aula 1 21 de 49 Prof. Diogo Santana www.cdfconcursos.com.br QUESTÃO DE PROVA: TRE GO – Técnico Judiciário – Programação de Sistemas - Acerca de bancos de dados, julgue o seguinte item. As três principais etapas de execução de um projeto de banco de dados são projeto lógico, projeto físico e criação do banco de dados. Resolução: Acabamos de estudar que as principais fases do projeto de banco de dados é o levantamento de requisitos, projeto conceitual, projeto lógico e projeto físico, e não possui entre as suas principais fases a de criação do banco de dados. Gabarito: Errada O modelo de dados conceitual resultado do esquema conceitual pode ser exibido por meio de uma notação gráfica conhecida como diagrama de entidade e relacionamento (DER). Esse diagrama foi proposto por Peter Chen em março de 1976 através da publicação do artigo “The Entity-Relationship Model: Toward the unified view of data”. O modelo de entidade e relacionamento (MER) é baseado na percepção do usuário do mundo real que consiste em uma coleção de objetos básicos que chamamos de entidades e relacionamento entre eles. Uma entidade é uma coisa ou objeto do mundo real que é distinguível de outros objetos, cada entidade pode ser descrita por um conjunto de atributos num banco de dados. Um relacionamento é a associação entre várias entidades, e os atributos são propriedades específicas tanto de uma entidade particular como também pode ser de um relacionamento. São os diversos tipos de entidade, relacionamentos e atributos que podem existir no modelo de entidade e relacionamento, agora vamos destacar as mais cobradas em concursos públicos. Banco de Dados para Concursos Públicos Minicurso Aula 1 22 de 49 Prof. Diogo Santana www.cdfconcursos.com.br ➢ Entidade fraca: Aquelas entidades que não possuem um atributo chave próprio. ➢ Relacionamento de identificação: Relacionamentos que identifica uma entidade fraca, feito com uma entidade forte. ➢ Atributo chave: identifica e individualiza uma entidade. ➢ Atributo multivalorado: possui um conjunto de valores para a mesma entidade. ➢ Atributo composto: os atributos que não são atômicos e que podem ser divididos em subpartes independentes. ➢ Atributo derivado: aqueles que são resultado de procedimentos feitos em outros atributos. Seguindo as fases do projeto de banco de dados, depois do esquema conceitual temos o projeto lógico, o principal modelo lógico é o modelo relacional. O conceito do modelo de dados relacional foi introduzido inicialmente por Edgar Frank (Ted) Codd em 1970 através da publicação do clássico artigo “Relational Model of Data for Large Shared Data Banks”. O Ted Codd escreveu 12 regras para o modelo de dados relacional com o intuito que não fossem diluídas as suas ideias iniciais e as fabricantes de SGBD continuasse a essência do modelo de dados relacional. Banco de Dados para Concursos Públicos Minicurso Aula 1 23 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Regra Zero (Regra fundamental) - para ser um sistema de gerenciamento de banco de dados relacional (SGBD), o sistema precisa usar suas facilidades de relacionamento (exclusivamente) para gerenciar o banco de dados. Regra Um (Regra da Informação) - as informações no banco de dados devem estar representadas de apenas uma forma, nomeados por valores em posições de colunas dentro de registros de tabelas. Regra Dois (Regra de acesso garantido) - Todos os dados devem estar acessíveis. Sendo que todo valor na base de dados deve ser logicamente endereçável por um nome específico do conteúdo tabela, o nome do conteúdo da coluna e o valor da chave primária do conteúdo registro. Regra Três (Tratamento sistemático de valores nulos) - o SGBD deve permitir que os campos possam ser nulos ou vazios. Representando uma "falta de informaçãoe informações inaplicáveis" que é sistemática, diferente de todos os valores regulares, e independente de tipo de dados. Regra Quatro (Catálogo on-line baseado no modelo relacional) - os metadados devem ser gerenciados e armazenados como dados comuns no banco de dados, ou seja, em tabelas no interior do banco de dados. Também devem estar disponíveis somente aos usuários autorizados, utilizando a linguagem de consulta padrão. Regra Cinco (Sublinguagem Ampla de Dados) - o sistema gerenciador pode suportar várias linguagens, sendo que dentre as linguagens, uma deve ser declarativa bem explicitada. Com suporte a definição de dados, definição de visualização, manipulação de dados, segurança e autorização, e gerenciamento de transações. Regra Seis (Atualização por meio de visualizações) - as visualizações que são teoricamente atualizáveis devem ser atualizadas pelo sistema. Regra Sete (Inserção, Atualização e Exclusão de alto nível) - o sistema pode fornecer suporte à configuração do nível de operações de insert, update e delete. As operações de inserção, atualização, e exclusão devem ser apoiadas para qualquer conjunto que pode ser pesquisado e não apenas para uma única linha de uma tabela. Regra Oito (Independência Física dos dados) - os aplicativos e recursos ad hoc não são afetados logicamente quando os métodos de acesso ou as estruturas de armazenamento físico são alteradas. Banco de Dados para Concursos Públicos Minicurso Aula 1 24 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Regra Nove (Independência Lógica de dados) - os aplicativos e recursos ad hoc não são afetados logicamente quando há alterações de estruturas de tabela que preservam os valores originais da tabela. Alterações nas relações e nas visualizações devem causar pouco ou nenhum impacto nas aplicações. Regra Dez (Independência de Integridade) - todas as restrições de integridade devem ser especificadas separadamente dos programas de aplicação e armazenadas no catálogo. Sendo necessário que seja possível mudar estas restrições sem que necessariamente modifique as aplicações. Regra Onze (Independência de Distribuição) - os aplicativos e usuários não devem ser afetados quando o banco de dados altera o armazenamento dos dados, e.g., sistemas distribuídos. Regra Doze (Não transposição das regras) - se o SGBD dá suporte a acesso de baixo nível aos dados, não deve haver um modo de negligenciar as regras de integridade do mesmo. QUESTÃO DE PROVA: SEFAZ RS – Auditor Fiscal da Receita Estadual – Uma das regras de Codd para o modelo relacional consiste A) na independência de distribuição. B) na presença de uma linguagem de programação no SGBD que promova interface com o banco de dados, com a segurança e com a atualização dos dados. C) na subversão das regras de integridade ou restrições quando utilizada uma linguagem de baixo nível. D) no não tratamento das atualizações de visões de dados. E) na dependência de dados físicos (mudança na memória e no método de acesso). Resolução: Acabamos de estudar as Regras de Codd para o modelo Relacional, dentre essas regras existe a regra onze da Independência da distribuição. Gabarito: A Banco de Dados para Concursos Públicos Minicurso Aula 1 25 de 49 Prof. Diogo Santana www.cdfconcursos.com.br O modelo de dados relacional representa o banco de dados como uma coleção de relações (tabelas), cada relação é dividida em tuplas (linhas) e seus atributos (colunas) que por sua vez pode ser representado por um conjunto de valores chamado de domínio. Os valores de domínios que são desconhecidos ou não aplicados recebem o valor NULL. QUESTÃO DE PROVA: PF – Perito Criminal – Acerca de banco de dados, julgue o item seguinte. Em um banco de dados relacional, os dados são armazenados em tabelas; e as tabelas, organizadas em colunas. Resolução: Exatamente, um banco de dados é uma coleção de tabelas que são chamadas de relação e as tabelas são organizadas em colunas que são chamadas de atributos. Gabarito: Correta Modelagem de Dados Banco de Dados para Concursos Públicos Minicurso Aula 1 26 de 49 Prof. Diogo Santana www.cdfconcursos.com.br ESQUEMAS E RESUMOS DA AULA 1. Esquema da definição de dados e banco de dados 2. Características fundamentais para banco de dados Dados Fatos conhecidos Fatos que podem ser registrados Fatos com significado implícito Banco de Dados Coleção de dados relacionados Coleção de dados computadorizados Armazenamento de dados Representação do mundo real •Minimundo •Universo do discurso Significado inerente •Coleção lógica de dados Finalidade específica •Banco de dados com propósito específico Banco de Dados para Concursos Públicos Minicurso Aula 1 27 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 3. Características da abordagem de banco de dados frente ao sistema de arquivos 4. Componentes do ambiente de sistema de banco de dados C ar ac te rí st ic as d a A b o rd ag em d e B an co d e D ad o s Natureza de autodescrição de um sistema de banco de dados. Isolamento entre programas e dados, e abstração de dados. Suporte a múltiplas visões dos dados. Compartilhamento de dados e processamento de transação multiusuário. Banco de Dados para Concursos Públicos Minicurso Aula 1 28 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 5. Sistema de banco de dados 6. Palavras-chaves da definição do SGBD BD SGBD SBD SGBD Definição: Especifica os tipos, estruturas e restrições dos dados armazenados Construção: Processo de armazenar os dados em algum meio controlado peo SGBD Manipulação: Consulta do banco de dados para recuperar e atualizar dados específicos. Compartilhamento: Permite que diversos usuários e programas acessem os dados simultaneamente. Proteção: Proteção contra defeitos de hardware e software, e segurança contra tentativa de acessos não autorizados. Manutenção: Um banco de dados é feito para persistir no decorrer do tempo, o SGBD deve ser capaz de manter o banco de dados no tempo. Banco de Dados para Concursos Públicos Minicurso Aula 1 29 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 7. Principais funcionalidades do SGBD 8. Detalhamento da definição do modelo de dados SGBD Controle de Concorrência Restrição de Integridade Facilidade e Otimizaçãode Consultas Recuperação após falhas em transações Segurnaça de acesso Garantia de consistência nos Dados M o d el o d e D ad o s Descrição dos dados Relacionamento dos dados Restrição de consistência Tipos de dados Banco de Dados para Concursos Públicos Minicurso Aula 1 30 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 9. Figura que apresenta a arquitetura em três camadas 10. Níveis de abstração da arquitetura em três camadas e do modelo de dados. Arquitetura em três camadas Externo ou visão (esquema externos) Conceitual ou lógico (esquema conceitual) Interno ou armazenamento (esquema interno) Modelo de Dados Conceitual ou alto nível (esquema conceitual) Representação ou implementação (esquema lógico) Baixo nível ou físico (esquema interno) Banco de Dados para Concursos Públicos Minicurso Aula 1 31 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 11. Esquema para o mapeamento e a independência de dados 12. Principais fases do projeto de banco de dados Levantamento e análise de requisitos Projeto Conceitual Projeto Lógico Projeto Físico Banco de Dados para Concursos Públicos Minicurso Aula 1 32 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 13. Principais notações do modelo de entidade e relacionamento. Banco de Dados para Concursos Públicos Minicurso Aula 1 33 de 49 Prof. Diogo Santana www.cdfconcursos.com.br QUESTÕES COMENTADAS Chegou o momento para fixar o conteúdo da aula, selecionamos questões atuais da banca CESPE. Caso você queira resolver as questões sem ver o comentário, pule esta parte e vá direto para o próximo tópico – Questões sem comentários. 1 – 2019 – CESPE – SEFAZ RS – Auditor Fiscal - As funções de um sistema de gerenciamento de banco de dados (SGBD) incluem A) gerenciar a integridade de dados, o dicionário e o armazenamento de dados, bem como a memória do computador enquanto o SGBD estiver em execução B) transformar e apresentar dados, controlar o acesso de multiusuário e prover interfaces de comunicação do banco de dados C) gerenciar o becape e a recuperação dos dados, bem como o escalonamento de processos no processador por meio do banco de dados D) gerenciar o sistema de arquivos e a segurança do banco de dados E) gerenciar a entrada e saída de dispositivos, linguagens de acesso ao banco de dados e interfaces de programação de aplicações Banco de Dados para Concursos Públicos Minicurso Aula 1 34 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Dentre as alternativas, a única que cita as funções do SGBD é a alternativa B, pois transformar e apresentar dados, realizar o controle de acesso e prover interfaces realmente é atividade feita pelo SGBD. Agora, apontaremos os erros das demais alternativas que estão relacionados a atividades do Sistema Operacional e não ao SGBD: Alternativa A erra em afirmar que SGBD gerencia a memória do computador; a Alternativa C erra em afirmar que SGBD gerencia o escalonamento de processos no processador; a Alternativa D erra em afirmar que SGBD gerencia o sistema de arquivos; por fim, a Alternativa E erra em afirmar que SGBD gerencia a entrada e saída de dispositivos, Resposta: B 2 - 2018 – CESPE – CGM – Auditor Controle Interno – Desenvolvimento de Sistemas – Um banco de dados é uma coleção de dados que são organizados de forma randômica, sem significado implícito e de tamanho variável, e projetados para atender a uma proposta específica de alta complexidade, de acordo com o interesse dos usuários. Conforme visto na explicação teórica da aula, um banco de dados é uma coleção logicamente coerente de dados e não uma variedade aleatória ou randômica de dados, além disso os dados tem um significado inerente ou implícito. ERRADO Banco de Dados para Concursos Públicos Minicurso Aula 1 35 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 3 - 2018 – CESPE – STM -Técnico Judiciário- Acerca dos conceitos de normalização de dados e dos modelos de dados, julgue o item subsequente. O modelo conceitual, que reflete uma estrutura simplificada do banco de dados, é responsável por registrar como os dados estão armazenados no sistema de gerenciamento de banco de dados (SGBD). O modelo conceitual é o modelo de mais alto nível sendo aquele que está mais próximos do modo como os usuários percebem os dados. Assim, percebe-se o primeiro erro ao afirmar que é uma estrutura simplificada do banco de dados e o segundo que ele não é responsável por registrar como os dados estão armazenados, isso fica a cargo do modelo físico ou de baixo nível. ERRADA 4 - 2017 – CESPE – SEDF – Analista TI - Julgue o item seguinte, a respeito de estruturas em programação e de arquiteturas de bancos de dados. O esquema do nível externo de uma arquitetura de três esquemas oculta os detalhes das estruturas de armazenamento físico e se concentra na descrição de entidades, tipos de dados, conexões, operações de usuários e restrições. Realmente o esquema de nível externo de uma arquitetura de três esquemas oculta os detalhes das estruturas de armazenamento físico, porém ela não se concentra na descrição de entidades, tipos de dados e restrições que são descrições típicas do esquema interno de armazenamento físico dos dados. Banco de Dados para Concursos Públicos Minicurso Aula 1 36 de 49 Prof. Diogo Santana www.cdfconcursos.com.br ERRADO 5 – 2017 – CESPE – TRT CE – Técnico Judiciário – Tecnologia da Informação – Acerca da arquitetura de três esquemas para bancos de dados, assinale a opção correta. A) Uma alteração no esquema interno da arquitetura implica alterar também o esquema externo. B) Na arquitetura de três esquemas, os níveis são definidos como interno, intermediário e externo. C) No nível interno da arquitetura, são descritos os caminhos de acesso para o banco de dados. D) Em um SGBD embasado nessa arquitetura, todos os grupos de usuários utilizam o mesmo esquema externo. Na parte teórica de arquitetura em três esquemas estudamosque o nível interno ou de armazenamento descreve os detalhes e os acessos para o armazenamento do banco de dados, analisando as alternativas, a única correta é a alternativa C. Agora, vamos analisar as demais: a alternativa A infringe a independência física de dados; a alternativa B erra ao relacionar os três níveis da arquitetura em três camadas, o correto seria nível externo, conceitual e interno; e por fim a alternativa D ao afirmar que todos os usuários utilizariam o mesmo esquema externo, cada esquema vai ter seu próprio perfil de usuário. Resposta C Banco de Dados para Concursos Públicos Minicurso Aula 1 37 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 6 – 2016 – CESPE – TCE PA – Auditor de Controle Externo – Analista de Sistema - Julgue o item subsequente, no que se refere a sistemas de gerenciamento de bancos de dados (SGBD). A principal característica da abordagem de banco de dados consiste em apresentar as ferramentas de acesso físico dependentes da plataforma de armazenamento. As características da abordagem de banco de dados são natureza de autodescrição de um sistema de banco de dados; isolamento entre programas e dados, abstração de dados; suporte a múltiplas visões de dados; e compartilhamento de dados e processamento de transação multiusuário. A segunda característica afirma justamente o oposto do enunciado da questão, tornando a afirmativa incorreta. ERRADA 7 – 2016 – CESPE – TCE PA – Auditor de Controle Externo – Analista de Sistema - Com relação a sistemas gerenciadores de bancos de dados (SGBD), julgue o próximo item. No nível conceitual da arquitetura de três camadas de banco de dados, cada esquema externo descreve a parte do banco que interessa a determinado grupo de usuários e oculta desse grupo o restante do banco de dados. Exatamente, no nível conceitual que descreve a estrutura do banco de dados inteiro para a comunidade de usuários e oculta os detalhes das estruturas de armazenamento físico. Banco de Dados para Concursos Públicos Minicurso Aula 1 38 de 49 Prof. Diogo Santana www.cdfconcursos.com.br CORRETO 8 – 2016 – CESPE – FUB – Técnico de Tecnologia da Informação - Acerca dos conceitos de bancos de dados, julgue o item seguinte. Em um projeto de banco de dados, a modelagem conceitual define quais dados vão aparecer no banco de dados, mas sem considerar a sua implementação. Realmente, em um projeto de dados é no modelo conceitual que se realiza a definição dos objetos que vão aparecer no banco de dados e faz essa atividade de forma independente da sua implementação física. CORRETO 9 - 2015 – CESPE – MPOG -Analista de Tecnologia da Informação - Acerca de sistema de gerenciamento de banco de dados (SGBD), julgue o seguinte item. O SGBD proporciona um conjunto de programas que permite o acesso aos dados sem exposição dos detalhes de representação e armazenamento de dados, por meio de uma visão abstrata dos dados, conhecida como independência de dados. Exatamente, o SGBD é um conjunto de programas por definição e implementa a independência de dados sem a exposição dos detalhes para o usuário dos detalhes de representação e armazenamento dos dados. CORRETO Banco de Dados para Concursos Públicos Minicurso Aula 1 39 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 10 - 2015 – CESPE – MPOG -Analista de Tecnologia da Informação- Acerca de sistema de gerenciamento de banco de dados (SGBD), julgue os seguintes itens. Os dados armazenados em um SGBD são acessados por um único usuário de cada vez, sendo impedido o acesso concorrente aos dados. Na parte teórica, você aprendeu que o SGBD realiza o controle de concorrência para o acesso de simultâneo de multiusuário, assim a Alternativa está errada. ERRADA 11 - 2018 – CESPE – FUB – Técnico de Tecnologia da Informação - Julgue o item seguinte, a respeito dos conceitos de modelagem de dados e níveis de abstração. No modelo de entidade-relacionamento, uma entidade se caracteriza por um objeto do mundo real que possui um conjunto de propriedades; os valores de um subconjunto dessas propriedades podem identificar de maneira única a entidade. A definição de entidade está coerente com o conceito visto na parte teórica da aula que caracteriza um objeto do mundo real, e os valores de um subconjunto dessas propriedades que podem identificar de maneira única a entidade se alinha com o conceito de chave que pode ser formada por atributos simples ou compostos. Banco de Dados para Concursos Públicos Minicurso Aula 1 40 de 49 Prof. Diogo Santana www.cdfconcursos.com.br CERTO 12 - 2018 – CESPE – SEFAZ RS – Assistente Administrativo Fazendário – No modelo entidade-relacionamento, as propriedades particulares que descrevem uma entidade são denominadas. A) valores. B) atributos. C) chaves primárias. D) relacionamentos. E) instâncias. Conforme visto na explicação teórica da aula, cada entidade possui atributos que são as propriedades específicas que a descrevem, assim temos a alternativa B como correta. Resposta: B 13 – 2016 – CESPE – TCE PR – Analista de Controle Externo – Tecnologia da Informação - Na modelagem de dados, o elemento que descreve as propriedades ou características em entidades e relacionamentos denomina-se A) cardinalidade. B) conjunto de relacionamentos. C) atributo. D) requisito. E) agregação. Na parte teórica você aprendeu que cada entidade possui atributos que são as propriedades específicas que a descrevem e que os Banco de Dados para Concursos Públicos Minicurso Aula 1 41 de 49 Prof. Diogo Santana www.cdfconcursos.com.br relacionamentos também podem ter atributos, logo a alternativa correta é a letra C. Resposta C 14 – 2016 – CESPE – TRE PI – Técnico Judiciário – Operações de Computadores – De acordo com a notação para diagramas entidade-relacionamento, assinale a opção que descreve a representação acima disposta. A) entidade, atributo, atributo composto e atributo derivado. B) relacionamento, atributo, atributo fraco e atributo multivalorado. C) entidade fraca, atributo-chave, atributo multivalorado e atributo derivado. D) entidade, atributo-chave, atributo multivalorado e atributo derivado. E) entidade forte, atributo, atributo composto e atributo fraco. De acordo com a parte teórica, temos respectivamente as representações de uma entidade fraca, atributo chave, atributo multivalorado e um atributo derivado, assim a alternativa correta é a letra C. Resposta C 15 – 2015 – CESPE – STJ – Analista Judiciário – Analistade Sistema de Informação - Julgue o próximo item, relativo a ferramentas de controle de versão, bancos de dados e desenvolvimento orientado a testes. Chave primária é o atributo utilizado para estabelecer a sequência física e lógica dos registros de um arquivo. Banco de Dados para Concursos Públicos Minicurso Aula 1 42 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Conforme estudado, o atributo chave ou chave primária é uma restrição de exclusividade sobre os atributos, seus valores podem ser usados para identificar cada entidade de maneira exclusiva, e não são utilizados para estabelecer a sequência física e lógica dos registros de um arquivo. ERRADA QUESTÕES – SEM COMENTÁRIOS 1 – 2019 – CESPE – SEFAZ RS – Auditor Fiscal - As funções de um sistema de gerenciamento de banco de dados (SGBD) incluem A) gerenciar a integridade de dados, o dicionário e o armazenamento de dados, bem como a memória do computador enquanto o SGBD estiver em execução B) transformar e apresentar dados, controlar o acesso de multiusuário e prover interfaces de comunicação do banco de dados C) gerenciar o becape e a recuperação dos dados, bem como o escalonamento de processos no processador por meio do banco de dados D) gerenciar o sistema de arquivos e a segurança do banco de dados E) gerenciar a entrada e saída de dispositivos, linguagens de acesso ao banco de dados e interfaces de programação de aplicações 2 - 2018 – CESPE – CGM – Auditor Controle Interno – Desenvolvimento de Sistemas – Um banco de dados é uma coleção de dados que são organizados de forma randômica, sem significado implícito e de tamanho variável, e projetados para atender a uma proposta específica de alta complexidade, de acordo com o interesse dos usuários. Banco de Dados para Concursos Públicos Minicurso Aula 1 43 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 3 - 2018 – CESPE – STM -Técnico Judiciário- Acerca dos conceitos de normalização de dados e dos modelos de dados, julgue o item subsequente. O modelo conceitual, que reflete uma estrutura simplificada do banco de dados, é responsável por registrar como os dados estão armazenados no sistema de gerenciamento de banco de dados (SGBD). 4 - 2017 – CESPE – SEDF – Analista TI - Julgue o item seguinte, a respeito de estruturas em programação e de arquiteturas de bancos de dados. O esquema do nível externo de uma arquitetura de três esquemas oculta os detalhes das estruturas de armazenamento físico e se concentra na descrição de entidades, tipos de dados, conexões, operações de usuários e restrições. 5 – 2017 – CESPE – TRT CE – Técnico Judiciário – Tecnologia da Informação – Acerca da arquitetura de três esquemas para bancos de dados, assinale a opção correta. E) Uma alteração no esquema interno da arquitetura implica alterar também o esquema externo. F) Na arquitetura de três esquemas, os níveis são definidos como interno, intermediário e externo. G) No nível interno da arquitetura, são descritos os caminhos de acesso para o banco de dados. H) Em um SGBD embasado nessa arquitetura, todos os grupos de usuários utilizam o mesmo esquema externo. 6 – 2016 – CESPE – TCE PA – Auditor de Controle Externo – Analista de Sistema - Julgue o item subsequente, no que se refere a sistemas de gerenciamento de bancos de dados (SGBD). Banco de Dados para Concursos Públicos Minicurso Aula 1 44 de 49 Prof. Diogo Santana www.cdfconcursos.com.br A principal característica da abordagem de banco de dados consiste em apresentar as ferramentas de acesso físico dependentes da plataforma de armazenamento. 7 – 2016 – CESPE – TCE PA – Auditor de Controle Externo – Analista de Sistema - Com relação a sistemas gerenciadores de bancos de dados (SGBD), julgue o próximo item. No nível conceitual da arquitetura de três camadas de banco de dados, cada esquema externo descreve a parte do banco que interessa a determinado grupo de usuários e oculta desse grupo o restante do banco de dados. 8 – 2016 – CESPE – FUB – Técnico de Tecnologia da Informação - Acerca dos conceitos de bancos de dados, julgue o item seguinte. Em um projeto de banco de dados, a modelagem conceitual define quais dados vão aparecer no banco de dados, mas sem considerar a sua implementação. 9 - 2015 – CESPE – MPOG -Analista de Tecnologia da Informação - Acerca de sistema de gerenciamento de banco de dados (SGBD), julgue o seguinte item. O SGBD proporciona um conjunto de programas que permite o acesso aos dados sem exposição dos detalhes de representação e armazenamento de dados, por meio de uma visão abstrata dos dados, conhecida como independência de dados. 10 - 2015 – CESPE – MPOG -Analista de Tecnologia da Informação- Acerca de sistema de gerenciamento de banco de dados (SGBD), julgue os seguintes itens. Banco de Dados para Concursos Públicos Minicurso Aula 1 45 de 49 Prof. Diogo Santana www.cdfconcursos.com.br Os dados armazenados em um SGBD são acessados por um único usuário de cada vez, sendo impedido o acesso concorrente aos dados. 11 - 2018 – CESPE – FUB – Técnico de Tecnologia da Informação - Julgue o item seguinte, a respeito dos conceitos de modelagem de dados e níveis de abstração. No modelo de entidade-relacionamento, uma entidade se caracteriza por um objeto do mundo real que possui um conjunto de propriedades; os valores de um subconjunto dessas propriedades podem identificar de maneira única a entidade. 12 - 2018 – CESPE – SEFAZ RS – Assistente Administrativo Fazendário – No modelo entidade-relacionamento, as propriedades particulares que descrevem uma entidade são denominadas. A) valores. B) atributos. C) chaves primárias. D) relacionamentos. E) instâncias. 13 – 2016 – CESPE – TCE PR – Analista de Controle Externo – Tecnologia da Informação - Na modelagem de dados, o elemento que descreve as propriedades ou características em entidades e relacionamentos denomina-se A) cardinalidade. B) conjunto de relacionamentos. C) atributo. D) requisito. E) agregação. Banco de Dados para Concursos Públicos Minicurso Aula 1 46 de 49 Prof. Diogo Santana www.cdfconcursos.com.br 14 – 2016 – CESPE – TRE PI – Técnico Judiciário – Operações de Computadores – De acordo com a notação para diagramas entidade-relacionamento, assinale a opção que descreve a representação acima disposta. A) entidade, atributo, atributo composto e atributo derivado. B) relacionamento, atributo, atributo fraco e atributo multivalorado. C) entidade fraca, atributo-chave, atributo multivalorado e atributo derivado. D) entidade,atributo-chave, atributo multivalorado e atributo derivado. E) entidade forte, atributo, atributo composto e atributo fraco. Resposta C 15 – 2015 – CESPE – STJ – Analista Judiciário – Analista de Sistema de Informação - Julgue o próximo item, relativo a ferramentas de controle de versão, bancos de dados e desenvolvimento orientado a testes. Chave primária é o atributo utilizado para estabelecer a sequência física e lógica dos registros de um arquivo. Banco de Dados para Concursos Públicos Minicurso Aula 1 47 de 49 Prof. Diogo Santana www.cdfconcursos.com.br GABARITO Referência Bibliográfica: 1. SILBERSCHATZ, A.; KORTH, H. F.; SUDARSHAN, S. Sistema de banco de dados. São Paulo: Makron Books, 1999. 2. DATE, C. J. Banco de dados: tópicos avançados. Rio de Janeiro: Campus, 1988. 3. ELMASRI, R.; NAVATHE, S. B.. Sistemas de Banco de Dados. 7a ed., Pearson-Addison-Wesley, 2018. 1 2 3 4 5 6 7 8 9 10 B E E E C E C C C E 11 12 13 14 15 16 17 18 19 20 C B C C E Chegamos ao fim da nossa primeira aula do minicurso de Banco de Dados, espero que você esteja aprendendo e gostando bastante, ele é uma breve noção de como é a nossa didática e metodologia de ensino. Bons estudos e até a próxima aula! Banco de Dados para Concursos Públicos Minicurso Aula 1 49 de 49 Prof. Diogo Santana www.cdfconcursos.com.br