37
Conhecimentos de Banco de Dados Teoria e exercícios Prof Leonardo Lima Aula 00 Prof.Leonardo Lima www.estrategiaconcursos.com.br Página 1 de 37 AULA 00: Introdução aos Bancos de Dados SUMÁRIO PÁGINA 1. Apresentação 1 2. Metodologia e Público Alvo 3 3. Cronograma 4 4. Conceitos Iniciais 6 4.1. Introdução 6 4.2. Conceituação 7 5. Bancos de Dados Informatizados 12 5.1. SGBD 12 5.2. Arquitetura de um Sistema de Informação 15 6. Características de um SGBD 18 7. Atores de um Banco de Dados 24 8. Resumo 31 9. Questões apresentadas nesta Aula 32 10. Gabarito 37 1. APRESENTAÇÃO Saudações caros(as) amigos(as), Começamos nessa aula a tratar do assunto Conhecimentos de Banco de Dados, voltado para o concurso da Controladoria Geral da União 2012, cargo AFC na área de Auditoria e Fiscalização, campo de atuação Geral. Estou muito satisfeito com a oportunidade que o Estratégia Concursos me concedeu para a elaboração desse curso, e estou ciente que é umas das disciplinas que mais está preocupando os candidatos à CGU, afinal, ninguém esperava tal matéria para esta área. Bem, para quem não me conhece, sou o Professor Leonardo Lima. Estou ocupando há pouco tempo o cargo de Auditor Federal de Controle Externo do TCU, aprovado no último concurso para a área de Auditoria Governamental. Sou formado em Ciência da Computação e Administração, e tenho pós-graduação em Sistemas de Informação e

Aula 00 - Conhecimentos de Bancos de Dados - Corrigida-1

Embed Size (px)

DESCRIPTION

aula de banco de dados CGU

Citation preview

Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 1 de 37 AULA 00: Introduo aos Bancos de Dados SUMRIOPGINA 1. Apresentao1 2. Metodologia e Pblico Alvo3 3. Cronograma4 4. Conceitos Iniciais6 4.1. Introduo6 4.2. Conceituao7 5. Bancos de Dados Informatizados12 5.1. SGBD12 5.2. Arquitetura de um Sistema de Informao15 6. Caractersticas de um SGBD18 7. Atores de um Banco de Dados24 8. Resumo31 9. Questes apresentadas nesta Aula32 10. Gabarito37 1. APRESENTAO Saudaes caros(as) amigos(as), ComeamosnessaaulaatratardoassuntoConhecimentosde BancodeDados,voltadoparaoconcursodaControladoriaGeralda Unio2012,cargoAFCnareadeAuditoriaeFiscalizao,campode atuao Geral. Estou muito satisfeito com a oportunidade que o Estratgia Concursosmeconcedeuparaaelaboraodessecurso,eestouciente queumasdasdisciplinasquemaisestpreocupandooscandidatos CGU, afinal, ningum esperava tal matria para esta rea. Bem,paraquemnomeconhece,souoProfessorLeonardoLima. EstouocupandohpoucotempoocargodeAuditorFederaldeControle ExternodoTCU,aprovadonoltimoconcursoparaareadeAuditoria Governamental.SouformadoemCinciadaComputaoe Administrao,etenhops-graduaoemSistemasdeInformaoe Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 2 de 37 AplicaesWeb.TrabalhocomComputaodesde1990,tendopassado pordiversasempresasprivadas,atuandocomoprogramador,analista, professor,consultordeprojetosetc.Em1997passeinomeuprimeiro concurso, para o Serpro, mas preferido declinar da posse. No mesmo ano, passei para o concurso de Tcnico do Tesouro Nacional, rea Informtica, trabalhandonaReceitaFederalporquase8anos.Em2005,passeino concursodeAnalistaJudicirio,reaAdministraodeBancodeDados, para o TRT 11 Regio. Trabalhei noTRT de 2005 at fevereiro de 2012 comoAdministradordeBancodeDados,eagorachegueiondetanto queria, o TCU. Alguns outros concursos que passei e por motivos diversos declineidaposseforam:AgentedaPolciaFederal(2002),Escrivoda PolciaFederal(2003),PeritoCriminaldaPolciaFederalrea3(2004), AnalistadeTecnologiadaInformaoSefaz-CE(2007).Duranteesses quase15anosqueestounareadeconcursos,tambmjreproveiem diversosdeles.Todossabemosqueconcursoisso,vocnofazpara passar, e sim at passar. Voltemos agora para a nossa disciplina. Se algum me perguntasse antesdoeditalqualaprobabilidadedeBancodeDadosserumadas matrias do concurso da CGU para a rea de Auditoria Geral, eu diria que eraZERO,queissonoerafactvel.Masaiveiooeditalcomessa surpresa,10questesdeconhecimentosemBancodeDados,compeso 3,colocando30valiosospontosparaseremdisputados.Quandoessas mudanasbruscasacontecem,temumladomuitopositivo.Colocatodo mundo no mesmo barco. Ningum vinha se preparando antecipadamente paraBancodeDados,entotodomundovaiterquecorreratrs. AconteceuamesmacoisanoltimoconcursodoTCU,aparecendoas disciplinasEconomiaparaRegulaoeDireitoRegulatrio.Nuncatinha visto nada dessas disciplinas. Fazer o que? Comprei os cursos apropriados (entreelesoexcelentecursodosprofessoresHeberCarvalhoeAndr Cunha)efuiencararaprovadefrente.Vocstmqueincorporaresse mesmoespritodedesafio,procurarconheceressenovadisciplina,eeu Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 3 de 37 tenhocerteza,commuitoesforodaparceriaqueestoumontandocom vocsapartirdessemomento,vamosdriblarmaisessadificuldadepara vocs alcanarem o excelente cargo de Analista de Finanas e Controle da CGU. 2. METODOLOGIA E PBLICO ALVO ExisteumagrandediferenaemprepararumcursodeBancode Dados para o pblico que vai fazer concurso para a rea de Tecnologia da Informao, e para a nossa realidade, que um curso para uma rea de generalistas. Minha prioridade nesse curso atender ao pblico que nada sabe sobre Banco de Dados, ou mesmo sobre Computao. Dessa forma, vouexplorardesdeconceitosbembsicos,mascomoobjetivode alcanar um nvel em que vocs se sintam seguros para fazer a prova. SeobservarmosagradedoscursosuniversitriosdeComputao, veremos que a disciplina Banco de Dados (s vezes dividida em BD I e BD II) est do meio para o fim do curso, vindo normalmente entre o 4 e 5 perodo.EquantoaMineraodeDados,normalmentenovistoem cursosdegraduao,aparecendocomodisciplinaoptativa.Euestudei minerao de dados em um curso de mestrado que iniciei (e infelizmente aindanoconseguiconcluir).Davocsjtiramanoodequenose aprendeBancodeDadossemalgunsconceitosiniciais.Masnose preocupem,vamospassarpelosconceitosmnimosnecessriosparao bom entendimento da matria. Eeuprofessor,quesouformadoemComputaooureasafins? Essecursoserveparamim?Acreditoquesim,masissovaideuma avaliaopessoaldoseunveldeconhecimento.Em Computao,assim como em outras reas, existem diversas subreas, e s vezes acabamos nos especializando mais em uma do que em outra. Se acreditar que esse curso pode lhe ajudar, timo, bem vindo a bordo, s tenha um pouco de pacincia se tiver que ler algo que lhe parece mais bvio ou bsico. Como um curso escrito, pode passar direto para aquilo que lhe interessa. Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 4 de 37 Porfim,querocompartilharumapequenaangstiacomvocs.O edital bem sucinto quando trata danossa disciplina. Vamos relembrar: CONHECIMENTOS DE BANCO DE DADOS: 1. Banco de Dados e Sistemas de Gerenciamento de Banco de Dados: conceitos bsicos, caractersticas e modelagem. 2. Minerao de Dados: Fundamentos, tipos de conjuntos de dados, classificao. 3. Linguagem SQL. Essetipodeeditalpodeserumagrandearmadilhaparaquemvai sepreparar.Vocvpoucostpicos,elogopensa:Ah,vaisermoleza, sopoucoassuntos.Digoparavocscomtodasegurana,naqueles poucostpicos,temmuitacoisaasercobrada.Euparticularmente nuncagostoquandooeditalvemassim,poisabancaficacomuma liberdade enorme para cobrar, e os concurseiros ficam na dvida at onde estudar.comoseabancacolocassenoeditalalgodotipo:Direito: constitucional,administrativo,civil,penal,comercial.Algumpensaria, nossa ...... que edital pequeno??A rea de Banco de Dados imensa. S a palavrinha modelagem abreumlequeenormedepossibilidades.AoutrapalavrinhaSQLabre outro mundo. Minerao de dados cobrada normalmente em cursos de ps-graduao.Ento,minhaangstiaserdelimitaraquiloquevamos estudar,afinalvocstempoucotempoeoutrasdisciplinasparase preocuparem. Bem, no sou me Din para saber exatamente o que vo cobrar, mas vou procurar aquilo que mais comum e aparece com mais frequncianessestpicoseaprofundaratumnvelcomcertamargem de segurana. melhor pagarmos pelo excesso do que pela falta. 3. CRONOGRAMA Nosso cronograma inicial est definido da seguinte forma: Aula 0 - 26/04/12 - Introduo aos Bancos de Dados. Aula 1 - 08/05/12 - Modelagem de Banco de Dados. Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 5 de 37 Aula 2 - 17/05/12 - Fundamentos de Minerao de Dados e tipos de dados. Aula 3 - 26/05/12 - Algoritmos de Classificao. Aula 4 - 04/06/12 - SQL: fundamentos e comandos bsicos. Aula 5 - 10/06/12 - SQL: joins. Existeumaforterelaoentreosassuntosdasaulas0e1.O mesmo com as aulas 2 e 3, e tambm com as aulas 4 e 5. Por isso, pode ser que um assunto previsto em uma aula seja antecipado ou postergado para outra aula relacionada. Porfim,dosemailsquetenhorecebido,muitosperguntamsobre livros de Banco de Dados. Inicialmente, no recomendo a quem no da readeComputaocomprarumlivrodeBancodeDadosparaesse concurso.Mas,duranteodesenrolardamatria,vocspodemsimfazer consultasalivrosemtpicosespecficos,oumesmoprocurarpequenos artigosnaWeb.Mascomotempocurto,pegarumlivrodeBancode Dadosnessemomentonoadequado.Vocsjviramoslivrosde informticanaslivrarias?Servemtantoparaobtenodeconhecimento como escudo de defesa contra asterides!!!! AstrsprincipaisrefernciasdareasooslivrosdoNavathe,do Silberschatz e do Date. Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 6 de 37 Bem, sei que me alonguei um pouco nas consideraes iniciais, mas eram informaes necessrias. Podemos ento comear os trabalhos? 4. CONCEITOS INICIAIS 4.1. INTRODUO No h como negar que os Sistemas Informatizados esto cada vez mais presentes em nosso cotidiano. Desde o momento em que samos de casaparafazermosasatividadesmaisrotineiras,comocompraro pozinhodocaf,fazercomprasnosupermercadoouconsultarnossa saldodacontabancria(oquesvezeslevadepresso),eatem outrastarefascomocomprarumapassagemarea,fazerreservasem hotisoumarcarumaconsultamdica,estamosinteragindocomesses sistemas,diretaouindiretamente.Eoqueacontecequandoesses sistemasestoindisponveis,ouforadoar,comosedizporai? Encaramos a frustrao de no conseguir realizar nossatarefa. s vezes voc est com o dinheiro na mo e no consegue comprar o que deseja. O que a maioria das pessoas no sabe ou no consegue notar que pordetrsdessesSistemasInformatizadostmumelementoessencial, chamado de BANCO DE DADOS. O Banco de Dados , grande parte das vezes,oelementomaisimportantenosSistemasdeInformao.Digo isso em meio a uma grande polmica, pois os especialistas das reas de redes,desenvolvimentodesistemas,engenhariadesoftwareetcvo pular da cadeira e dar mil motivos para dizer que a parte mais importante de um Sistema de Informao esse ou aquele. Mas quando se trata de SistemadeInformao,onomejdiztudo,aInformaoobem mais valioso para as empresas atualmente, e o Banco de Dados a alma doSistema,poiscomoveremos,noBancodeDadosquetodasas informaessoarmazenadas.Digoumacoisacomcerteza,sevoc chegarparaogerentedeTIdesuaempresaeperguntar,detodasas Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 7 de 37 mquinas que ele tem disponvel, se ele tivesse que escolher s uma para ficarinteiraeasoutrasseriamexplodidasporterroristas(ou sequestradasporextra-terrestres,qualquercoisadotipo),achomuito difcileleresponderalgodiferentedoque:Podelevartudo,menosmeu Banco de Dados. TalvezissoexpliqueumpoucoosmotivosquelevaramaCGUa cobraressadisciplinaparaareadeAuditoriaGeral.Cadavezmaiso papeldoprofissionalreadeControle(sejaInternoouExterno) interpretar,analisaredescobririnformaesdeumgrandeconjuntode dadosdisponveis.OdomniodeferramentasdatecnologiadeBancode Dados pode ser um diferencial para o profissional de Controle. Imaginem oqueanalisarcontas,procedimentos,pagamentosetcdeumrgo pblico,eaindacruzaressainformaescomdiversasfontes.um trabalhoquecadavezmaisvaiserinformatizadoeprecisarde ferramentasapropriadasepessoaltreinadoparaconduziresses procedimentos. No sei se consegui livrar a cara da ESAF e da CGU com essa, mas uma viso. ExistemdiversasaplicaesparaosBancosdeDados,eeles continuaro cada vez mais sendo usados em todos os casos que Sistemas deInformaoauxiliamotrabalhodaspessoas.Comoveremosno decorrerdocurso,armazenargrandesquantidadesdeinformaono maisalgomuitoproblemticoparaaTecnologiadaInformao.Sabero quefazercomessasbasesdedados(svezesgigantescas)queso elas. Isso ser tratado nas aulas de Minerao de Dados. Mas afinal, o que so Bancos de Dados? 4.2. CONCEITUAO Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 8 de 37 Semprequeestudamosumadisciplina,sentimoslogodecaraa necessidadedadefiniodeseuconceito.Eunoquisfazeressa conceituao antes de nos contextualizarmos, mas agora chegou a hora. Quando se trata de Banco de Dados, existe tanto a definio popular, ou aquiloqueaspessoasentendemporBancodeDados,eexiste logicamente uma definio tcnica, que aquela que nos interessa mais, e tende a ser cobrada no concurso. Aspessoasusamnoseudia-a-diaotermoBancodeDadosde uma forma bem ampla. Alguns se referem a sua agenda telefnica como oseuBancodeDadosdeTelefones.TodoconcurseirotemseuBanco deDadosdeprovas.UmcorretordeimveispodeterseuBancode Dados de clientes, e por ai vai. Esses conceitos esto errados? Claro que no, se considerarmos uma definio lato sensu de Banco de Dados. Agora,partindoparaumadefiniomaistcnicadentrodaCincia da Computao, Elmasri e Navathe (2005) definem um Banco de Dados comoumacoleodedadosrelacionados,sendoessesdados definidoscomofatosquepossuemumsignificadoimplcito.Pode parecerumadefiniobemcurtaevaga,mastemoquedemais importantesepodedizerdebancodados:Conjuntodedados relacionados.JSilberchatz(2011)defineBancodeDadoscomouma coleodedadosinter-relacionadosquecontminformaes relevantes para uma empresa. Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 9 de 37 Eu acredito que mais importante que decorar conceitos, entender o que foi descrito.Para podermos entender o que um Banco de Dados nocontextodaCinciadaComputao,devemosprocurartrs caractersticas implcitas do que os Bancos de Dados possuem: UmBancodeDadosrepresentaalgunsaspectosdomundo real(minimundoouuniversodediscurso).Asmudanasno minimundosorefletidasnoBancodeDados.Porexemplo, umBancodeDadospoderepresentartodasasinformaes, documentos,pessoas,papeis,relatriosetcdeumsetorde contabilidade de uma empresa, ou de uma loja de vendas de roupas,oudeumrestaurante,eporaivai.NoBancode Dadosessesobjetos(fsicosouno)sorepresentadose armazenados; UmBancodeDadosdeveterumacoleolgicaecoerente dedadoscomalgumsignificadoinerente.Umacoleode dados ao acaso no pode ser corretamente interpretada como umBancodeDados.Imaginemqueemumapastavocs guardem as contas pagas, as receitas de biscoito da sua av, asletrasdasmsicasquevoccompsquandoachouque seriaroqueiro,eosannciosdeempregoquevocrecortou do jornal na pocada lisura. Isso seria um Banco de Dados? Claro que no, apenas um conjunto de dados sem nenhuma correlao lgica entre eles. UmBancodeDadosprojetado,construdoepovoado (preenchido)pordados,atendendoaumaproposta especfica.Normalmentepossuiumgrupodeusurios definidos e algumas aplicaes preconcebidas, de acordo com ointeressedessegrupodeusurios.Vamosvernodecorrer docursoqueummesmoBancodeDadospodeatendera gruposdeusuriosdiferentesecomvisesdiferentes.Por Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 10 de 37 exemplo,umBancodeDadosdeumalojadevarejoatende tantoovendedorqueestnaponta,quantoogerente, diretor,proprietriosetc,cadaumcomvisesdiferentesdos mesmos dados. Assim,sparafecharumconceito,vamosdefinirumBancode Dadoscomoumconjuntodeinformaesqueserelacionamde formaquecriemumsentido,representadoumadeterminada realidade. Ento,vamospararparapensarumpoucooqueeoqueno BancodeDados,paraonossocontexto.UmaplanilhaExcelcontendo os telefones dos seus amigos um Banco de Dados? Nesse caso no, pois estamostratandodeumconceitomaisestrito,eumalistadetelefones no tem a representatividade de um minimundo.Agora, um conjunto de gavetas,contendotodasasnotasfiscaisdeumaloja,tantodeentrada como de sada, assim como todos os pagamentos a funcionrios, tributos, tudo organizadinho, mas em papel, um Banco de Dados? sim, pode no estar informatizado, mas vemos que temos nesse caso um conjunto dedadosinter-relacionados,organizadosdeformacoerente,que representam um minimundo, e com um significado inerente. Ento apesar deestarmostratandodeBancodeDadosemComputao,noofato deestarnocomputadorquetornaoconjuntodeinformaesumBanco deDadosouno.Sosuascaractersticasquevomostraroqueeo quenoBancodeDados.Portanto,ElmasrieNavthe(2005)afirmam queumBancodeDadospodesergeradoemantidomanualmenteou pode ser automatizado. E os exerccios professor, vai ficar s no bl bl bl? Claro que no, masveremosqueparaessaaulainicialnoexistemassimtantos exercciosparaoassunto.VamosvercomoaESAFjtratoua conceituao e Bancos de Dados. 1. (ESAF/ATI/SUSEP 2010) Um Banco de Dados um:Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 11 de 37 a) conjunto de objetos da realidade sobre os quais se deseja manter informaes. b) conjunto de operaes sobre dados integrados destinados a modelar processos. c)softwarequeincorporaasfunesdedefinio, recuperao e alterao de dados. d) software que modela funes de definio, recuperao e alterao de dados e programas. e)conjuntodedadosintegradosdestinadosaatenders necessidades de uma comunidade de usurios.Partindo para a anlise de cada letra: (a)adefiniodaletraanoestdetodaerrada,elasestum pouco restrita, por considerar um Banco de Dados como um conjunto de objetossobreosquaissedesejamanterinformaes.Maiscorretoseria dizer que um Banco de Dados um conjunto de dados que representam objetos da realidade. (b)UmBancodeDadosjamaispodeserconsideradoumconjunto de operaes. Quando se fala em operaes no contexto da Computao, normalmente est se referindo a programas, funes, ou seja, trechos de cdigoqueexecutamtransformaesnosdados.Issonoto importanteparaagente,stemosqueentenderqueoBancodeDados jamais pode ser entendido como um conjunto de operaes. (c) e (d) Uma informao importante, que eu passo agora, e vocs devem sempre se lembrar, que Banco de Dados no um software. Issomuitoimportante,poisasBancassemprebuscamfazeressa confuso.Maisadiantevoudescreverossoftwaresqueimplementam Bancos de Dados no computador, mas no esqueam, Banco de Dados no software!!!! Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 12 de 37 (e)Peloquejvimos,aletraeseencaixadeformaperfeitana definio de banco de dados. GABARITO: Letra e 5. BANCOS DE DADOS INFORMATIZADOS 5.1. SGBD AgoraqueentendemosadefiniodeBancodeDados,vamos tratardeformamaisprximaosBancosdeDadosinformatizados,ou seja, aqueles que fazem parte de um Sistema de Informao. Voucomeartratandodaafirmaoquefizavocs, dequeBanco de Dados no software. Bem, j compartilhamos a ideia de que o Banco deDadosumdoscomponentesmaisimportantesdeumSistemade Informao.Mascomoelearmazenado,tratado,mantido,acessado, atualizado, dentro de um Sistema de Informao? Antigamente(quandosedizantigamenteemComputao,isso podeserapenas20anosatrs,oumenos),quandoeucomeceinessa rea,paradesenvolverumSistemadeInformao,deveramosterna aplicao todo um cuidado com os dados, e implementar todas as tarefas demanutenodeles.OsSistemasprecisavamintegraremsua implementaooseuprprioBancodeDados.Ento,comogrande crescimentodaComputao,principalmentedepequenoporte (microcomputadores),surgiramosSISTEMASGERENCIADORESDE BANCODEDADOS(SGBD).UmSistemaGerenciadordeBancode Dadosumsoftware(conjuntodeprogramas)quepermiteacriaoe manuteno de Bancos de Dados. , portanto, um software de propsito geral,quefacilitaosprocessosdedefinio,construo,manipulaoe compartilhamento de Bancos de Dados entre vrios usurios e aplicaes. Fazendoumaanalogiaumpoucotosca,comosevocsfossem fazerumareceitadeumbolo,masnobastasseseguirareceita,voc Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 13 de 37 no tem nada disponvel, tem que cuidar de tudo, desde plantar, colher o trigo, transformar em farinha, at criar as galinhas para botarem os ovos, criaravacaparaobteroleite,eporaivai.Serqueesseboloficaria pronto?Claroqueexagereiumpouco,masdesenvolveraplicaessem usar um SGBD era mais ou menos isso, o prprio desenvolvedor teria que tomar conta de tudo em seu programa. Agora,vocsjouviramfalaremOracle,SQLServer,MySQLou PostGre? Esses so alguns dos principais SGBD existentes no mercado. Se vocsperguntaremdealgumdareadeTIdaempresanaqualvocs trabalhamqualoBancodeDadosqueaempresautiliza,muito provavelmenteumdessesquatrovaisercitado.Vejamqueatentre profissionais de TI comum se referir a esses programas como Banco de Dados,masnaverdadeelessoSistemasGerenciadoresdeBancode Dados(SGBDouDBMS,emingls).Dessaforma,podemosverque quando as questes dizem que Bancos de Dados so softwares, elas esto induzindo o candidato a essa linguagem mais comumente usada, mas que tecnicamenteesterrada.Entorepitodenovo,todavezqueuma questo tentar definir Banco de Dados como software, ela est errada. O SGBDumsoftware,BancodeDadosno.Contudo,vejambem,no incomum encontrar questes de concurso que comeam com algo do tipo, O Banco de Dados Oracle tem as seguintes caractersticas ...., e claro que nesse caso est bem contextualizada que a questo sobre o SGBD Oracle, e no sobre o conceito de Banco de Dados.Dou um pequeno PAUSE no assunto para lembrar vocs agora o que aprendidetantolevarporradanacabeadasBancasdeconcurso.No adiantaquererbrigarcomaBanca,principalmentecomcertospurismos dedefinio.Oobjetivodevocspassaremumconcursopblicoe entrarparaumdosmaisimportantesrgosdaAdministraoPblica Federal, e no fazer provas j pensando nos recursos, principalmente por detalhes bobos. Vamos aprender a conhecer a Banca e jogar o jogo dela. Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 14 de 37 Depoisdeaprovados,volnafrentedasedeefaamadancinhada vitria!!!!! Assim, voltando ao nosso assunto, podemos perceber que um SGBD podeservistocomoumcontainer,quevaiabrigardiversosBancosde Dados.OSGBD,sozinho,noagreganenhumvaloraumaorganizao. SoosBancosdeDadosarmazenadosemumSGBDquetmuma importncia salutar para as organizaes. Olhem essa questo da ESAF sobre esse assunto: 2.(ESAF/Administrador/ENAP2006-adaptada)Analiseas seguintesafirmaesrelacionadasaConceitosBsicosde Informtica e gerenciadores de banco de dados.I. Um SGBD (Sistema de Gerenciamento de Banco de Dados) umsistema computadorizado de armazenamento e organizao dedados.Podetrazervantagens,comoalteraoerecuperao dedadoscommaisrapidez,armazenagemdeinformaoem menorespao,minimizaoderedundnciasedeinconsistncias de informaes, compartilhamento de estrutura e dados.Comentrios Oinciodaquestonodeixadvidasparavocs,correto?Um SGBDumsistemacomputadorizado(software)dearmazenamentoe organizaodedados.Quantoaorestodaquesto,nocomentamos sobre isso, mas est correto. Um SGBD permite alterao e recuperao dedadoscommaisrapidez,economiadeespao,minimizaode redundnciaseinconsistncia,almdocompartilhamentodeestruturas de dados. Vamos ver rapidamente os conceitos novos: Redundncianormalmenteassociadaaumrepetio desnecessria dos dados em um Banco de Dados. No faz muito sentido guardardiversasvezesamesmainformao,assimdeve-seevitara Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 15 de 37 redundncia. Por exemplo, para que guardar trs vezes o endereo de um mesmo cliente? Basta uma vez, correto? Inconsistncia em Bancos de Dados significa ter dados incompletos, quenorefletemarealidadedominimundo.SeumaNotaFiscaltemo valor total de R$ 25.000,00, e no Banco de Dados o valor total dela de R$2.500,00,essedadoestinconsistente.Existemdiversosoutros exemplosdeinconsistncia,quenointeressamnomomentoaonosso estudo. Oimportante saber que osSGBD tm mecanismos para evitar essas inconsistncias. Porfim,estruturasdedadossoformasdesearmazenare organizar os dados em um Sistema de Informao, para que possam ser usados de forma eficiente. No se preocupem com esse conceito, pois no precisamosentenderasdiversasestruturasdedadosparaonosso estudo. GABARITO: CERTO Vamos ver como um Banco de Dados de encaixa em um Sistema de Informao. 5.2. ARQUITETURA DE UM SISTEMA DE INFORMAO Vamosagoraanalisar,deformasucintaemuitoporalto,quala arquiteturadeumSistemadeInformaoeondeoBancodeDadosse encaixa nesse processo. TenhofaladoemSistemasdeInformao,masnoseisealgum imaginaalgoqueno.QuandofaloemSistemasdeInformao,me refiroaosSistemasquevocsusamnodia-a-dianasempresas,comoo Sistema da rea Contbil, o Sistema de RH e Folha de Pagamento e por ai vai. Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 16 de 37 Os Sistemas de Informao, em linhas gerais, so divididos em trs partes principais, conhecidos como Arquitetura de trs Camadas. A camada de Interface a responsvel por interagir com o usurio doSistema.aquelaqueosusuriosenxergam,etemasfacilidades (botes,caixasdeescolhaetc)paraqueseconsigaentrarcomdadose visualizarasrespostasdoSistema.Nessacamadasofeitaspequenas validaesdasinformaesqueumusurioentraparaalimentaro Sistema. Por exemplo, se voc tem um formulrio na web para preencher (comoumcadastroemumalojavirtual),nacamadadeinterfaceque validaesiniciaissofeitas,comoporexemplonopermitirquese informemletrasemumcampoquepedeonmerodotelefone.Essa camadatambmrefletecertascaractersticasdoSistema,comoonvel de acesso do usurio e as opes disponveis (botes, menus etc). A prxima camada a de negcios, onde so descritas as regras de negcio de uma aplicao. Vou exemplificar. Imaginem uma aplicao de umaloja,emqueosvendedorestmumlimitedealadaparadarum desconto.Nomomentoemqueseregistraavenda,umasriede verificaes so feitas pelos Sistemas de Informao, do tipo: o desconto que o vendedor quer conceder est dentro do limite de alada? O produto existenoestoque,emquantidadesuficienteparaatenderaopedido?O CPF informado do cliente est correto? O CEP informado para a entrega vlido?Eporaivai....TodoSistemadeInformaodevefazeruma verificaodosdadosinformados,normalmentechamadodecrtica Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 17 de 37 entrada de dados, seno o Sistema passa a aceitar informaes absurdas quevoprejudicarocontroleeoperacionalizaodonegcioegerar dadosinconsistentes.Acamadadenegcioscuidaentodetodasas regras de negcio, que so validadas durante a operao do Sistema. Porfim,acamadaquemaisimportaparanossoestudoade persistncia, onde ficam nossos Bancos de Dados, armazenados em um oumaisSistemasGerenciadoresdeBancodeDados(SGBD).Porque chamadadecamadadepersistncia?Porqueosdadospassadosparao BancodeDadospersistem,ouseja,depoisdainformaogravadano Banco de Dados, mesmo que todos os computadores sejam desligados, a informaocontinualdisponvelparaconsulta.Assim,osBancosde Dadossoarmazenadosnamemriapermanentedocomputador,como osdiscos,asfitas,osCDsetc.Aquiloquenopersistente,portanto transiente,passageiro,eficanamemriaRAMdoComputador,aquela memriavoltilqueperdetodooseucontedoquandoaenergia desligada.Valeressaltarqueaquelesmbolomostradonafigurada pginaanterior,umaespciedecilindro,osmboloquenormalmente representa o Banco de Dados. Essascamadas,emSistemascorretamenteprojetados,so independentes, ou seja, podemos trocar uma delas sem precisar modificar asdemais.Porexemplo,seaempresaemquevoctrabalhautilizao SGBDOracle,equertrocarparaoMySql,podemigrarosdadosparao outro SGBD sem mexer nas camadasde negcio e interface. Na prtica, sempresemodificaalgumacoisanasdemaiscamadas,masemteoria, elassoindependentes.comosevendessemcarrosemtrspartes: motor,latariaeparteinterna.Aisupostamentevocpoderiacomprar uma nova lataria e trocar pela sua, mantendo o mesmo motor e a parte interna. Ou trocar apenas o motor, mantendo o resto. A ideia essa. Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 18 de 37 6. CARACTERSTICAS DE UM SGBD Existem algumas caractersticas que so comuns quando utilizamos Sistemas Gerenciadores de Bancos de Dados. Essas caractersticas devem ser implementadas por qualquer SGBD que se preze. Vamos ver algumas delas.AprimeiraanaturezaautodescritivadosSGDB.Issoquer dizer que os SGBD no armazenam somente os dados propriamente ditos. Eles guardam uma srie de informaes sobre a definio da estrutura desses dados e suas restries. Isso quer dizer na prtica o seguinte: Imaginem que eu desejo armazenar em um Banco de Dados, entre outras informaes,umatabela(veremosesseconceitocommaisdetalhes) contendoainformaodetodososmeusDVDseBlu-rays.Bem,para guardaressasinformaes,euprecisoinformaraoSGBDcomosero estes dados que eu vou armazenar. Eu posso informar, por exemplo, que irei armazenar o ttulo do filme, os atores do filme, o ano de lanamento, o gnero (aventura, terror, fico etc), quantas vezes eu j assisti, e por aivai.Possoirmaislonge,einformaralgumasrestriesaessesdados quequeroarmazenar.PossiinformaraoSGBDqueainformaode quantasvezeseuassistispodeaceitarnmerosinteiros,maioresou iguaisazero.Vamosvernasprximasaulasquetipodeinformaese restries podemos informar a um SGBD. Essas informaes sobre os dados so chamadas de METADADOS. Esseumconceitomuitoimportanteequedeveserentendidodesde agora.Metadados sodadossobreoutrosdados.Umitemdeum metadadopodedizerdoquesetrataaqueledado,geralmenteuma informaointeligvelporumcomputador.Osmetadadosfacilitamo entendimentodosrelacionamentoseautilidadedasinformaesdos dados. Imaginem que vocs vo guardar essas informaes dos filmes em uma planilha eletrnica. Fazendo uma analogia, aquelas informaes que Conhecimentos de Banco de DadosTeoria e exerccios Prof Leonardo Lima Aula 00 Prof.Leonardo Limawww.estrategiaconcursos.com.br Pgina 19 de 37 geralmentecolocamosnaprimeiralinha,queumcabealho descrevendo cada item da sua planilha, so metadados. Titulo Tipo Lanamento Gnero Atores Diretores