Este livro, uma introduo bastante ampla a agora muito
extensa rea dos sistemas de bancos de dados, oferece uma base slida sobre os fundamentos da tecnologia de bancos de dados e apresenta algumas idias a respeito da forma provvel como essa rea se desenvolver no futuro. O livro se destina principalmente a ser utiliado como livro!texto, e no como uma obra de refer"ncia #embora eu acredite $ue ele tambm possa ser %til, at certo ponto, como manual de refer"ncia&. ' "nfase, em todo o livro, est nas idias e na compreenso, e no apenas em formalismos. P()!(E*+,-,.O- O livro como um todo se destina a $ual$uer pessoa $ue ten/a algum tipo de interesse profissional em informtica e $ueira ad$uirir uma compreenso do assunto de sistemas de bancos de dados. -upon/o $ue o leitor ten/a pelo menos um con/ecimento bsico de0 1 (ecursos de armaenamento e gerenciamento de ar$uivos #indexao etc.& de um moderno sistema de computador2 1 3aracter4sticas de uma ou mais linguagens de programao em alto n4vel #por exemplo, 3, 5ava, Pascal, P67, etc&. E-.(+.+(' O livro se divide em seis partes principais0 8. 3onceitos bsicos ,,. O modelo relacional ,,,. Pro9eto de bancos de dados ,:. ;erenciamento de transa<es :. .emas avanados :,. =ancos de dados de ob9etos e relacional7ob9eto 3ada parte, por sua ve, se divide em vrios cap4tulos0 1 ' Parte 8 #$uatro cap4tulos& fornece uma ampla introduo aos conceitos de sistemas de bancos de dados em geral e sistemas relacionais em particular. E tambm apresenta a linguagem padro de bancos de dados -*6. 1 ' Parte ,, #cinco cap4tulos& consiste em uma descrio detal/ada e muito cuidadosa do modelo relacional, $ue no somente o alicerce terico sub9acente aos sistemas relacionais, como tambm a base terica da rea de bancos de dados como um todo. 1 ' Parte ,,, #$uatro cap4tulos& discute a $uesto geral do pro9eto de bancos de dados2 tr"s cap4tulos so dedicados teoria do pro9eto2 o $uarto tece considera<es a respeito da modelagem sem>ntica e do modelo de entidades e relacionamentos. 1 ' Parte ,: #dois cap4tulos& se ocupa de vrios aspectos do gerenciamento de transa<es #isto , a recuperao e controle da concorr"ncia&. ?,? 1 ' Parte : #oito cap4tulos& uma espcie de miscel>nea. Em geral, porm, ela mostra como os conceitos do modelo relacional so relevantes para uma variedade de aspectos complementares da tecnologia de bancos de dados @ segurana, bancos de dados distribu4dos, dados temporais, apoio deciso, e assim por diante. 1 Ainalmente, a Parte :, #dois cap4tulos& descreve o impacto da tecnologia de ob9etos sobre os sistemas de bancos de dados. Em particular, o 3ap4tulo BC #o %ltimo& considera a possibilidade de uma aproximao entre as tecnologias orientada a ob9eto e relacional, alm de examinar os sistemas relacional7ob9eto. 'lm disso, / tr"s ap"ndices @ um deles fornecendo mais detal/es sobre a -*6, um sobre a D-*6EF #uma nova verso de -*6 $ue provavelmente ser ratificada como padro na poca em $ue este livro estiver impresso& e um $ue contm uma lista com algumas abreviaturas e siglas importantes. Gota0 .ambm se encontra dispon4vel um Hanual do Professor on!line, $ue fornece orientao sobre a maneira de utiliar o livro como uma base para se ministrar um curso sobre bancos de dados. Ele consiste em uma srie de anota<es, dicas e sugest<es a respeito de cada parte, cap4tulo e ap"ndice, bem como respostas para exerc4cios no resolvidos no prprio livro e outros materiais de apoio. Para obter instru<es sobre como conseguir acesso ao Hanual, visite o Ieb site da editora $ue publicou a verso original deste livro, em /ttp077/epg.aJl.com7rep!locator. 3OHO 6E( E-.E 6,:(O Ke modo geral, o livro deve ser lido mais ou menos na mesma se$L"ncia em $ue foi escrito mas, se preferir, voc" poder saltar os %ltimos cap4tulos e as %ltimas se<es dentro dos cap4tulos. +m plano sugerido para uma primeira leitura seria0 1 6er os 3ap4tulos 8 e B DsuperficialmenteF. 1 6er os 3ap4tulos E e M com todo o cuidado. 1 6er os 3ap4tulos C, N, O e P, mas ignorar o 3ap4tulo Q, exceto talve pela -eo Q.Q. 1 6er o 3ap4tulo 8R DsuperficialmenteF. 1 6er os 3ap4tulos 88 e 8E com cuidado e saltar o 3ap4tulo 8B. 1 6er os 3ap4tulos 8M e 8C cuidadosamente. 1 6er os cap4tulos subse$Lentes de maneira seletiva, de acordo com seu gosto e interesse. 3ada cap4tulo se inicia com uma introduo e termina com um resumo. 'lm disso, a maioria dos cap4tulos inclui uma srie de exerc4cios, normalmente com respostas #com fre$L"ncia, as respostas fornecem informa<es adicionais sobre o assunto do exerc4cio&. ' maioria dos cap4tulos inclui tambm uma extensa lista de refer"ncias, muitas delas com anota<es. Essa estrutura permite $ue o assunto se9a tratado em vrios n4veis, com os conceitos e resultados mais importantes sendo apresentados Dem lin/aF no corpo principal do texto, en$uanto diversas $uest<es subsidirias e aspectos mais complexos so adiados para a seo Exerc4cios, (espostas ou (efer"ncias, conforme apropriado. Gota0 as refer"ncias so identificadas no texto por n%meros em duas partes entre colc/etes. Por exemplo, a refer"ncia DSE. 8TF di respeito ao primeiro item da lista de refer"ncias encontrada no final do 3ap4tulo E0 especificamente, um artigo de E. A. 3odd publicado em 3'3H, :ol. BC, GB B, em fevereiro de 8POB. #Para ver uma explicao das abreviaturas usadas nas refer"ncias @ por exemplo, D3'3HF @ consulte o 'p"ndice 3.& xx 3OHP'('UVO 3OH EK,UWE- 'G.E(,O(E- 's principais diferenas entre esta edio e sua predecessora esto resumidas a seguir0 1 Parte 80 os 3ap4tulos de 8 a E cobrem de modo geral os mesmos assuntos dos 3ap4tulos de 8 a E da edio anterior, mas eles foram reescritos, e o tratamento de diversos tpicos foi mel/orado e ampliado. O 3ap4tulo M, novo #embora se baseie parcialmente no antigo 3ap4tulo O&, oferece uma introduo -*6, focaliando aspectos $ue no pertencem logicamente a nen/uma outra parte do livro #em particular, exemplos de linguagem /ospedeira e -*6 embutida&. 1 Parte ,,0 os 3ap4tulos de C a P #sobre o modelo relacional& representam uma verso completamente reescrita, bastante expandida e muito mel/orada dos 3ap4tulos de M a Q e 8Q de edio anterior. Em particular, as se<es sobre tipos #dom4nios&, valores de rela<es versus variveis de rela<es, integridade, predicados e vis<es foram todas drasticamente revisadas. Gota0 nesse ponto, so necessrias algumas palavras de explicao. Edi<es anteriores deste livro usaram a -*6 para ilustrar idias relacionais, na crena de $ue seria mais fcil para o estudante mostrar!se o concreto antes do abstrato. Entretanto, infelimente, o abismo entre a -*6 e o modelo relacional cresceu tanto $ue agora considero $ue seria um e$u4voco usar a -*6 para tal finalidade. Ke fato, a -*6 em sua forma atual est to longe de ser uma incorporao verdadeira de princ4pios relacionais @ ela sofre de muitos pecados de omisso e comisso @ $ue teria sido prefer4vel releg!la a um ap"ndice2 porm, a linguagem to importante do ponto de vista comercial #e todo profissional de bancos de dados precisa ter uma certa familiaridade com ela& $ue simplesmente no seria ade$uado trat!la de forma to desleixada. Por essa rao, preferi ficar em um meio!termo @ um cap4tulo sobre fundamentos de -*6 na Parte 8 do livro e se<es individuais em outros cap4tulos #onde aplicveis& descrevendo os aspectos de -*6 espec4ficos para o assunto do cap4tulo em $uesto. 1 Parte ,,,0 os 3ap4tulos de 8R a 8E so uma reviso significativa dos antigos 3ap4tulos de P a 8B, com novo material sobre atributos valorados de rela<es, desnormaliao, pro9eto ortogonal e abordagens alternativas para modelagem sem>ntica #inclusive Dregras de negcioF&. Gota0 novamente, necessria uma explicao. 'lguns revisores de edi<es anteriores reclamaram $ue as $uest<es de pro9eto de bancos de dados estavam sendo tratadas muito tarde. Porm, ten/o a impresso de $ue os alunos no esto preparados para pro9etar bancos de dados de forma apropriada ou para apreciar totalmente as $uest<es relacionadas com o pro9eto at terem uma certa compreenso do $ue so os bancos de dados e de como eles so empregados2 em outras palavras, acredito $ue importante dedicar algum tempo ao modelo relacional e s $uest<es $ue ele envolve antes de expor o aluno a $uest<es de pro9eto. Kesse modo, ainda creio $ue a Parte ,,, est no lugar correto do livro. 1 Parte ,:0 os dois cap4tulos dessa parte so vers<es ligeiramente revisadas e expandidas dos 3ap4tulos 8E e 8M da edio anterior. 1 Parte :0 os 3ap4tulos 8P #sobre /erana de tipo&, B8 #sobre apoio deciso& e BB #sobre bancos de dados temporais& so totalmente novos. Os 3ap4tulos 8N #sobre segurana&, 8Q #sobre otimiao&, 8O #sobre perda de informa<es& e BR #sobre bancos de dados distribu4dos& so vers<es expandidas e bastante revisadas dos antigos 3ap4tulos 8C, 8O, BR e B8, respectivamente. O 3ap4tulo BE #sobre bancos de dados baseados na lgica ou dedutivos& uma verso revisada do antigo 'p"ndice 3. 1 Parte :,0 o 3ap4tulo BM uma verso completamente reescrita e muito mel/orada dos antigos 3ap4tulos de BB a BM. O 3ap4tulo BC $uase todo novo. Por fim, o 'p"ndice ' se baseia em uma parte do antigo 3ap4tulo O, o 'p"ndice = novo, e o 'p"ndice 3 uma verso atualiada do antigo 'p"ndice K. xxX 'lm das mudanas descritas anteriormente, os tpicos a seguir foram retirados desta edio0 1 Estruturas de armaenamento e mtodos de acesso #antigo 'p"ndice '&. 1 Estudo detal/ado de K=B #antigo 'p"ndice =&. O *+E .O(G' E-.E 6,:(O K,AE(EG.EY 3ada livro sobre bancos de dados existente no mercado tem seus prprios pontos fortes e suas defici"ncias, e todo escritor possui seu prprio estilo. +m autor se concentra nos temas relacionados ao gerenciamento de transa<es, outro esgota o tema da modelagem de entidades7relacionamentos, outro ainda observa tudo atravs das lentes da -*6, um outro escritor adota apenas um ponto de vista de Dob9etosF, outro v" a rea de bancos de dados exclusivamente em termos de produtos comerciais, e assim por diante. ) claro $ue no sou exceo a essa regra @ tambm ten/o min/as prefer"ncias pessoais0 a$uilo $ue poderia ser c/amado de alicerce. 'credito $ue devemos ter a base correta e compreend"!la de forma apropriada antes de tentarmos construir algo sobre essa base. Ke min/a parte, essa convico explica a "nfase pesada deste livro no modelo relacional2 em particular, explica a extenso da Parte ,, @ a parte mais importante do livro @ em $ue apresento min/a prpria maneira de entender o modelo relacional da forma mais cuidadosa poss4vel. Estou interessado em funda<es, no em modismos passageiros. Gesse contexto, devo dier $ue estou bastante ciente de $ue o tom geral deste livro mudou ao longo dos anos. 's primeiras edi<es tin/am uma naturea mais descritiva. Elas mostravam a rea como ela era na prtica, sem reto$ues. Em contraste, esta edio muito mais prescritiva2 ela trata do modo como a rea devia ser e sobre a maneira como ela dever se desenvolver no futuro, se fiermos as coisas certas #em outras palavras, este um livro!texto com uma posturaZ&. 'lm disso, a primeira parte do Dfaer as coisas certasF educar a si mesmo de modo seguro sobre $uais so realmente essas coisas certas. Espero $ue esta edio possa a9udar nesse empreendimento educacional. Existe ainda outro ponto #relacionado&0 alguns dos leitores devem saber $ue, 9unto com meu colega [ug/ KarJen, publi$uei recentemente outro livro DprescritivoF a respeito da tecnologia de bancos de dados, cu9o t4tulo #abreviado& ./e ./irdHanifesto SE.E9. Esse livro foi elaborado sobre os fundamentos do modelo relacional com o ob9etivo de oferecer uma proposta tcnica detal/ada para o futuro dos sistemas de bancos de dados #ele o resultado de muitos anos de ensino e meditao sobre tais assuntos por parte de [ug/ e de mim mesmo&. 'ssim, no surpreendente $ue as idias do Hanifesto alimentem todo este volume. ,sso no $uer dier $ue o Hanifesto se9a um pr!re$uisito para este livro @ no o caso2 porm, ele diretamente relevante para grande parte da$uilo $ue veremos neste livro e contm informa<es adicionais pertinentes $ue voc" poder encontrar com fre$L"ncia. +H 3OHEG.\(,O A,G'6 ;ostaria de encerrar este prefcio com o seguinte texto extra4do de outro prefcio, o de =ertrand (usseli para ./e =ertrand (usseli Kictionar] of Hi, Hatter and Horais #ed. 6ester E. Kenonn&, 3itadel Press, 8PPE, reproduido a$ui com permisso0 .en/o sido acusado do /bito de mudar min/as opini<es... Eu prprio no ten/o nen/uma vergon/a Sdesse /bitoT. *ue f4sico $ue estivesse em atividade no ano de 8PRR son/aria em se vangloriar de $ue suas opini<es no mudaram durante o %ltimo meio sculoY... ' espcie de filosofia a $ue dou valor e ten/o tentado perseguir cient4fica, no sentido de /aver algum con/ecimento definido a ser obtido e de $ue novas descobertas podem tornar inevitvel a $ual$uer mente sincera o recon/ecimento de erros anteriores. Pelo $ue ten/a dito, se9a cedo, se9a tarde, no afirmo a espcie de verdade $ue os telogos afirmam para seus credos. 'firmo apenas, na mel/or das /ipteses, $ue a opinio expressa era sensata em seu tempo... Aicaria muito surpreso se a pes$uisa subse$Lente no mostrasse $ue precisava ser modificada. S.ais opini<esT no pretendiam ser pronunciamentos pontificais, apenas eram o mel/or $ue eu podia dier na ocasio para a promoo do pensamento claro e preciso. 3larea, acima de tudo, tem sido meu alvo. ??,, 'u comparar edi<es anteriores deste livro com esta edio, voc" descobrir $ue tambm mudei de opinio sobre muitas $uest<es #e sem d%vida continuarei a fa"!lo&. Espero $ue aceitem as observa<es citadas anteriormente como 9ustificativa raovel para esse estado de coisas. 3ompartil/o da percepo de =ertrand (ussell do $ue se9a o campo da pes$uisa cient4fica, mas ele exprime essa percepo de modo muito mais elo$Lente do $ue eu poderia faer. ';('KE3,HEG.O- Hais uma ve, um praer recon/ecer min/a d4vida para com as muitas pessoas envolvidas, direta ou indiretamente, na produo deste livro. Primeiro, devo agradecer a meus amigos Kavid Hc;overan e [ug/ KarJen por sua importante participao nesta edio. Kavid colaborou com o primeiro esboo do 3ap4tulo B8 sobre apoio deciso, e [ug/ contribuiu com o rascun/o inicial do 3ap4tulo BB, sobre bancos de dados temporais. [ug/ tambm empreendeu um trabal/o de reviso muito cuidadoso sobre grandes partes do original, incluindo em particular todos os cap4tulos sobre o modelo relacional e o ap"ndice sobre -*6E. Em segundo lugar, o texto se beneficiou dos comentrios dos alunos dos seminrios $ue ven/o ministrando nos %ltimos anos. Ele tambm se beneficiou enormemente dos comentrios e da discusso com numerosos amigos e revisores, incluindo 3/arle] =ontempo, Keclan =rad], [ug/ KarJen #novamente&, .im [artle], 'drian 6arner, 3/ung 6ee, Kavid 6ivingstone, Gi^os 6orentos, [ui/a 6u, (amon Hata!.oledo, Gelson Hattos, Kavid Hc;overan #novamente&, Aabian Pascal, -ud/a (am, (ic^ van der 6ans, _ongdong Iang, 3olin I/ite e *iang `/u. 3ada uma dessas pessoas revisou pelo menos uma parte do original desta edio ou pas disposio algum material tcnico, ou me a9udou de algum modo a encontrar respostas para min/as muitas d%vidas tcnicas. -ou muito grato a todos. Em particular, gostaria tambm de agradecer a min/a esposa 6ind] por colaborar mais uma ve no trabal/o de arte da capa. Por fim, sou grato #como sempre& a todo o pessoal da 'ddison!Iesle] @ especialmente a Haite -uare!(ivas e bat/erine [arutunian @ por todo o incentivo e apoio durante este pro9eto, e ainda min/a editora El]dia Kavis por seu trabal/o sempre perfeito. 3. 5. Kate [ealdsburg, 3alifrnia 8PPP '',,,