7/27/2019 8127780 Colecao InfoBanco de Dados
1/110
7/27/2019 8127780 Colecao InfoBanco de Dados
2/110
CONTEDO
BANCO DE DADOS
4 A aventura dos dados15 >Sabe o que tupla?24 >Planeje bem
o seu banco31 >O banco fala SQLqus
TESTES34 >Um SQL Server
fcil de usar36 >Oracle em verso light38 >DB2 grtis com
tudo dentro
42 >O MySQL ganha msculos47 >Misso crtica para Postgre
50 >Firebird poupaa mquina
54 >O Access entraem reforma
57 >Administrao tudo
7/27/2019 8127780 Colecao InfoBanco de Dados
3/110
CONTEDO
C OL E O I N FO> 5
EQUIPEEDIOLucia ReggianiEDITORA DE ARTEIara SpinaCAPACrystian Cruz (arte) e Cellus (ilustrao)COLABORADORESCarlos Chernij,Fred Carbonare, Helio Silva, NivaldoForesti (texto) e Rita Del Monaco (reviso)
108 Certificao: laboratriopara especialistas
89 Tutorial: dados Exif dasfotos para o SQL Express
42 Teste: o MySQL 5.0vem reforado
TUTORIAIS62 >Tabelas sem mistrio71 >Relatrio feito com views75 >Crie pesquisas com
critrios
78 >O phpMyAdmindoma o MySQL83 >Atualizao com o Ajax86 >Pesquise bem no Access89 >O Exif vai para o banco97 >E-mail falso no entra100 >O Rails faz mais rpido
105 >Controle os seus livrosCERTIFICAES108 >Especialistas em dados109 >Todo mundo
quer um OCP111 >Domine o DB2 em
seis etapas
113 >Craques em SQL Server
7/27/2019 8127780 Colecao InfoBanco de Dados
4/110
Fundador: VICTOR CIVITA(1907-1990)
Diretora de Redao:Sandra CarvalhoRedatora-chefe:Dbora FortesDiretor de Arte:Crystian Cruz
Editores Seniores: Carlos Machado, Lucia Reggiani e Maurcio GregoEditores:Airton Lopes,Andr Cardozo e Eric Costa
Reprter:Silvia BalieiroEstagirios:Danilo Gregrio e Paulo de AlencarRevisora:Marta MagnaniEditor de Arte:Jefferson BarbatoDesigners:Catia Herreiro e Wagner Rodrigues
Colaborador:Dagomir MarqueziInfolab:Osmar Lazarini (consultor de sistemas)Colaborador:Eduardo KalnaitisEstagirios:Bruno Roberti,Celso Rodrigues e Valdir Fumene JuniorInfo Online:Cristian Medeiros e Renata Verdasca (webmasteres)
Atendimento ao leitor:Virglio Sousawww.info.abril.com.br
Apoio Editorial:Beatriz de Cssia Mendes,Carlos GrassettiServios Editoriais:Wagner BarreiraDepto. de Documentao e Abril Press:Grace de SouzaCorrespodente Internacional:Ruth de Aquino
PUBLICIDADE CENTRALIZADADiretores:Mariane Ortiz, Sandra Sampaio,Srgio R.Amaral
Executivos de Negcio:Eliane Pinho, Letcia Di Lallo, Maria Luiza Marot, Marcelo Cavalheiro, Marcelo Dria,Nilo Bastos, Pedro Bonaldi, Robson Monte, Rodrigo Toledo, Sueli Cozza,Vlamir Aderaldo,Wlamir Lino
Publicidade RegionalDiretor Jacques Baisi RicardoPublicidade Rio de Janeiro:Diretor Paulo Renato SimesGerente de Publicidade ncleo Tecnologia:Marcos Peregrina GomezExecutivos de Negcio:Andria Balsi,
Emiliano Hansenn, Marcello Almeida e Renata MioliMARKETING E CIRCULAO:
Gerente de Produto:Ricardo Fernandes,Coordenadora de eventos:Carol Fioresi,Estgiario de marketing:Maurcio Simes RodriguesGerente de Circulao Avulsas:Maria Helena CoutoGerente de Circulao Assinaturas:Euvaldo Nadir Lima Junior
Planejamento, Controle e Operaes: Diretor:Auro IasiGerente:Fbio Luis dos SantosAnalista:Tales BombiciniProcessos:Ricardo Carvalho
ASSINATURAS:Diretora de Operaes de Atendimento ao Consumidor:Ana DvalosDiretor de Vendas:Fernando Costa
Editor: Roberto CivitaConselho Editorial: Roberto Civita (Presidente), Thomaz Souto Corra (Vice-Presidente),
Jose Roberto Guzzo, Maurizio Mauro
Presidente Executivo: Maurizio Mauro
Diretor Secretrio Editorial e de Relaes Institucionais: Sidnei BasileVice-Presidente Comercial: Deborah Wright
Diretora de Publicidade Corporativa: Thais Chede Soares B. Barreto
Diretor-Geral:Jairo Mendes LealDiretor de Ncleo:Alexandre Caldini
INTERNATIONAL ADVERTISING SALES REPRESENTATIVES Coordinator for International Advertising:Global Advertising, Inc.,218 Olive Hill Lane,Woodside,California 94062.UNITED STATES:CMP Worldwide Media Networks,2800 Campus Drive,San Mateo,California 94403,tel. (650) 513 4200,fax (650) 513 4482. EUROPE:HZI International,Africa House,64-78 Kingsway,London WC2B 6AH,tel. (20) 7242-6346,fax (20) 7404-4376. JAPAN:IMI Corporation,Matsuoka Bldg.303, 18-25,Naka1- chome, Kunitachi,Tokyo 186-0004,tel. (03) 3225-6866, fax (03) 3225-6877. TAIWAN: Lewis Intl Media Services Co. Ltd., Floor 11-14 no 46, Sec 2, Tun Hua SouthRoad,Taipei, tel. (02) 707-5519, fax (02) 709-8348
COLEO BANCO DE DADOS,edio 27, uma publicao da Editora Abril S.A. Distribuda em todo o pas pela Dinap S.A.Distribuidora Nacional de Publicaes, So Paulo.
Presidente do Conselho de Administrao: Roberto CivitaPresidente Executivo: Maurizio Mauro
Vice-Presidentes: Deborah Wright, Eliane Lustosa, Marcio Ogliara, Valter Pasquiniwww.abril.com.br
IMPRESSA NA DIVISO GRFICA DA EDITORA ABRIL S.A.Av. Otaviano Alves de Lima, 4400, CEP 02909-900 - Freguesia do - So Paulo - SP
Publicaes da Editora Abril: Veja:Veja, Veja So Paulo, Veja Rio, Vejas RegionaisNegcios:Exame, Voc S/AA Consumo/Comportamento: NcleoConsumo:Boa Forma, Elle, Estilo, ManequimNcleo Comportamento:Claudia, NovaNcleo Bem-Estar:: Bons Fluidos, Sade!, Vida SimplesTurismo/Tecnologia: Ncleo Turismo:Guias Quatro Rodas, National Geographic, Viagem e TurismoNcleo Homem:: Placar, Playboy, Quatro Rodas, VipNcleo Tecnologia:Info,Info Canal, Info CorporateCultura/Jovem: Ncleo Jovem:Bizz, Capricho, Flashback, Mundo Estranho, Superinteressante, SupersurfNcleo Infantil:Atividades, Disney, RecreioNcleo Cultura:: Almanaque Abril, Guia do Estudante, Aventuras na Histria, Revista das ReligiesCasa/Semanais: Ncleo Casa e Construo:Arquitetura e Construo, Casa Claudia, Claudia CozinhaNcleo Celebridades:Contigo! NcleoSemanais:Ana Maria, Faa e Venda,Minha Novela,Tititi,Viva! MaisFundao Victor Civita:Nova Escola
Publicidade So Paulowww.publiabril.com.br,Classificados tel.0800-7012066,Grande So Paulo tel. 3037-2700ESCRITRIOS E REPRESENTANTES DE PUBLI-CIDADE NO BRASIL:Central-SP tel.(11) 3037-6564 Bauru GnottosMdia Representaes Comerciais, tel. (14) 3227-0378,e-mail: [email protected] Propaganda e Representaes Ltda, tel (91) 3272-8195,e-mail: [email protected] Horizontetel. (31) 3282-0630,fax (31) 3282-0632BlumenauM.Marchi Representaes,tel. (47) 3329-3820,fax (47) 3329-6191BrasliaEscritrio:tels. (61) 3315-7554/55/56/57,fax (61) 3315-7558;Representante:Carvalhaw Marketing Ltda.,tels (61) 3426-7342/ 3223-0736/ 3225-2946/ 3223-7778, fax (61) 3321-1943,e-mail: [email protected] Press Com. eRepresentaes, telefax (19) 3233-7175, e-mail: [email protected] GrandeJosimar Promoes Artsticas Ltda.tel. (67) 3382-2139 e-mail: [email protected] Fnix Propaganda Ltda., tels. (65) 9235-7446/9602-3419, e-mail: [email protected] Escritrio: tel. (41) 3250-8000/8030/8040/8050/8080, fax (41) 3252-7110; Representante:Via Mdia Projetos Editoriais Mkt. e Repres. Ltda., telefax (41) 3234-1224,e-mail: [email protected] Publicidade Ltda. tel.(48) 3232-1617, fax (48) 3232-1782,e-mail:[email protected] Repres.e Negoc.em Meios de Comunicao,telefax (85) 3264-3939,e-mail: [email protected] West Representaes Ltda., tels.(62) 3215-5158,fax (62) 3215-9007,e-mail: [email protected] Joinville Via Mdia Projetos Editoriais Mkt.e Repres. Ltda., telefax (47) 3433-2725, e-mail:[email protected] Comunicaes, telefax (92) 3656-7588,e-mail: [email protected] de Comunicao e Representao,tele-fax (44) 3028-6969,e-mail:[email protected] AlegreEscritrio:tel. (51) 3327-2850,fax (51) 3227-2855;Representante:Print Sul Veculos de ComunicaoLtda., telefax (51) 3328-1344/3823/4954, e-mail: [email protected] ;Multimeios Representaes Comerciais, tel.(51) 3328-1271, e-mail:[email protected]
RecifeMultiRevistas Publicidade Ltda.,telefax (81) 3327-1597,e-mail:[email protected] Pretotel.(16) 3964-5516,fax (16) 632-0660,e-mail:[email protected] de Janeiropabx:(21) 2546-8282,fax (21) 2546-8253SalvadorAGMN Consultoria Public.e Representao, tel.(71) 3341-4992/1765/9824/9827,fax: (71) 3341-4996, e-mail:[email protected] - Zambra Marketing Representaes, tel. (27) 3315-6952,e-mail:[email protected]
7/27/2019 8127780 Colecao InfoBanco de Dados
5/110
RECADO DA REDAO
D-LHEINFORMAO!universo do software grande e abriga mundos
muito peculiares, comoo dos bancos de dados.
De obscuros repositrios dos main-frames, esses programas passarama estrelas de todo porte, organizan-do a exploso de informaes gera-das pela vida digital de pessoas eempresas. Neles, tabelas so maisque colunas e linhas, os dados seagrupam em entidades e se relacio-nam abertamente, transacionam,disparam gatilhos e administram res-tries. Nesse mundinho, o e/ANDno soma, diminui. E quem no sabedessa e outras pegadinhas lgicas,
perde tempo fazendo besteira. aqui que se encaixa este especial.Aos novatos, contamos a histriagloriosa dos bancos de dados e des-trinchamos seus conceitos. De ban-deja, vai um roteiro para escolher osistema gerenciador, planejar e exe-cutar o banco da melhor forma pos-
svel. Testamos as novssimas ver-ses gratuitas dos poderosos Oracle,
DB2 e SQL Server 2005, dos livresMySQL, PostgreSQL e Firebird e dobeta repaginado do Access 12. Entre-gamos o jeito profissional de mon-tar tabelas e consultas, os segredosdas interfaces de administrao euma poro de tutoriais com osvariados bancos. Voc vai sabercomo extrair as informaes Exif dasfotos digitais para o banco, criar rela-trios com views, controlar os livrosemprestados, cadastrar e-mails vli-dos e muito mais. E se a animaochegar ao ponto de devotar a carrei-ra administrao dos bancos de
dados, esto aquios caminhos paraas especializaesmais valorizadasda rea. Aproveite.
LUCIA REGGIANIEDITORA DE BANCODE DADOS
O
INFO COLEOUma publicao mensal da Editora AbrilPara contatar a redao:[email protected] assinar a Coleo:(11) 3347.2121 Grande So Paulo0800-701-2828 Demais [email protected]
C OL E O I N FO>7
7/27/2019 8127780 Colecao InfoBanco de Dados
6/110
A AVENTURADOS DADOSDO MAINFRAME INTERNET, OS BANCOS
DE DADOS TM MUITO PARA CONTARPOR TAGIL OLIVEIRA RAMOS
HISTRIA
8 < C OL E O I NF O
rmazenar informaesorganizadas e recupe-r-las sem faltar peda-o sempre que neces-
srio. Dita assim, a misso dos ban-
cos de dados parece simples, trivial.No deixa de ser verdade para astecnologias atuais, que disfaram acomplexidade do processamento e
do gerenciamento de dados com in-
A
7/27/2019 8127780 Colecao InfoBanco de Dados
7/110
HISTRIA
C OL E O I NF O> 9
terfaces grficas e assistentes. Mas,no princpio, lidar com bases de da-dos era coisa cabeluda, encaradapor mainframes.
A histria dos modernos bancosde dados comea na dcada de 60,quando os computadores amplia-ram a capacidade de armazenamen-to e se transformaram em possibi-lidade real para as empresas. Nohavia ainda o conceito elaboradode banco de dados o armazena-mento de informao digital basea-va-se em modelos de organizao
do mundo fsico. No incio, dois mo-
delos de bancos de dados foram de-senvolvidos: o de rede (Codasyl) e
o hierrquico (IMS). O acesso ba-se de dados era complicadssimo, eos detalhes do armazenamento de-pendiam do tipo de dado a ser ar-quivado. Acrescentar um campo ex-tra base requeria, muitas vezes,reescrever todo o esquema que sus-tentava a aplicao. A nfase, nes-se caso, estava nos registros a se-rem processados, e no na estrutu-ra do sistema. Para fazer qualquermodificao, um usurio precisariaconhecer a estrutura fsica da basede dados. Sistemas comerciais bem-sucedidos, como o Sabre, da IBM eda American Airlines, utilizaram pormuitos anos esse tipo de modelo.
O MODELO DE CODDNo incio dos anos 70, as coisas co-meam a mudar. O pesquisador daIBM Edgar Frank Codd (1923-2003)
prope o modelo relacional para abase de dados. Mais do que isso, eleintroduz uma nova maneira de pen-sar a informao digital a ser gra-vada, recuperada e gerenciada, es-tabelecendo um jeito mais compu-tacional de tratar o relacionamen-to entre os dados. Esse sistema vi-rou padro e usado at hoje.O modelo abstrato de Codd a pri-meira abordagem completa parauma base de dados, o resgate dasinformaes, manipulao, integri-dade lgica, visualizao, atualiza-o e gerenciamento. Foi concebi-
do para armazenar registros de da-
7/27/2019 8127780 Colecao InfoBanco de Dados
8/110
HISTRIA
10 < C OL E O I NF O
dos com estruturas relati-vamente simples e proces-
sar transaes simples.A idia comeou a ser
desenvolvida por Codd du-rante seu doutorado naUniversidade de Michigan.Em sua tese, ele apresen-tava uma espcie de au-to-reproduo feita emprogramas de computa-dores. O trabalho foi publicado em1967 no livro Cellular Automata, pu-blicado pela Academic Press. A idiaera to avanada que levou uma d-cada para ser digerida.
Pelo menos dois prottipos prin-cipais de sistemas relacionais foramdesenvolvidos entre 1974 e 1977,mostrando aplicaes prticas doque s existia na teoria.
Um dos prottipos era o Ingres,desenvolvido na UniversidadeBerkeley, que seria seguido pela In-
gres Corporation, Sybase, MS SQLServer e Britton-Lee, dentre outras.
Esse tipo de sistema usaQUEL como linguagem de
pesquisa das bases de da-dos. O segundo prottipo,conhecido como SystemR, foi desenvolvido pelaIBM em San Jose, Califr-nia, e levou ao SQL/DS &DB2, da prpria empresa,seguido por Oracle e HP.Nesse sistema, utiliza-
da a SEQUEL como linguagem depesquisa de dados. Originalmente,as aplicaes foram desenvolvidaspara os enormes mainframes.
AS DOZE REGRASO termo relao era usado porCodd de maneira estritamente ma-temtica, dentro de uma tabela comlinhas e colunas que trabalhavamcom propriedades especiais. Embo-ra isso parea bvio atualmente, noera nada elementar nos anos 70.
Tanto que Codd sentiu a necessida-de de estabelecer as 12 regras deuma base de dadosrelacional, uma re-ceita para extrair domodelo algo quefuncionasse mesmo.Isso aconteceu em1974 e foi expandidoao longo das dca-das. Em 1990, a listacresceu para 333 re-querimentos.
Vistas com osolhos de hoje, as 12
leis parecem brinca-Mapa de relacionamento: a teoria de Codd na prtica
Edgar Codd: pai domodelo relacional
7/27/2019 8127780 Colecao InfoBanco de Dados
9/110
HISTRIA
C OL E O I NF O> 11
deira. A primeira de-las, conhecida como
Lei da Informao,dizia simplesmenteque todo dado deveser apresentado aousurio na forma detabela. A segunda, ouRegra do Acesso Ga-rantido, exige quetodo dado seja aces-svel sem ambigidade e aconselhaque cada informao seja descritapor uma combinao de nome databela, chave primria e o nome docampo. E assim por diante.
O mesmo Codd cunharia o nomeOLAP (On-Line Analytical Proces-sing) para descrever uma ampla ca-tegoria de produtos de software quetinham as caractersticas de acessoaos dados propostas por ele. As 12Regras de seu padro foram adota-das pela indstria de TI, forando
muitas empresas a revisar seus pro-dutos para melhor se adequar aoscritrios OLAP de Codd.
Em 1976, outro avano viria das pes-quisas de Peter P. Chen. Ele prope omodelo Entidade-Relacio-namento (ER) para o designde banco de dados, dandoum importante passo paraa modelagem de alto nvele permitindo ao desenvol-vedor concentrar-se maisno uso das informaes doque propriamente na estru-tura lgica que h por trs
da tabela.
SURGE O DBASEA evoluo natural dos bancos dedados passaria pelo estabelecimen-to de um padro no-terico: o dBa-se, ao ser lanado no final dos anos70, tornou-se uma referncia. Suaorigem encontra-se em meados dosanos 60. Seu antecessor era um sis-tema chamado Retrieve, vendido pe-la Tymshare Corporation. Naquelapoca, os computadores s eramencontrados em grandes gabinetes,no ambiente do trabalho.
O Retrieve era usado no Jet Pro-pulsion Laboratory (JPL), em Pasa-dena, na Califrnia. Nos anos 60,Jeb Long, um programador desselaboratrio, recebeu a tarefa de es-
crever um programa quedesempenhasse as mes-mas funes que o Retrie-ve. Em 1973, ele se tornouengenheiro de softwaredo JPL. Ali ele desenvol-veu um programa de ge-renciamento de arquivoschamado JPLDIS (Jet Pro-pulsion Laboratory Dis-
play Information System),
dBase III: padro de banco de dados para PCs nos anos 80
Peter Chen: novomodelo de design
7/27/2019 8127780 Colecao InfoBanco de Dados
10/110
HISTRIA
12 < C OL E O I NF O
escrito na linguagem For-tran para rodar num main-
frame Univac 1108.O JPLDIS foi, assim, a
me da linguagem dBase,que passou a rodar em mi-crocomputadores com osistema CP/M. Criada porum jovem programadordo JPL, Wayne Ratliff, seugrande sucesso baseava-se na simplicidade. Os co-mandos seguiam a lgica das pala-vras inglesas: use, find, list etc. NodBase, Ratliff partia de uma idiatambm simples: desenvolver umprograma de banco de dados paradesktop baseado naquele que roda-va nos mainframes de seu trabalho.Fez tudo isso num computador mon-tado em sua casa.
Foi um grande progresso para apoca. No somente o programacriava tabelas e guardava dados,
mas tinha a capacidade de criar pro-gramas ASCII (como arquivos batchdo DOS), que podiam ento exibire imprimir as informaes requisi-tadas. Ratliff batizou seu softwarede Vulcan (em homenagem ao Sr.
Spock, do filme Jornadanas Estrelas) e comeou
a vend-lo por reembol-so postal.
Mais tarde, Long asso-ciou-se a Ratliff e traduziuaquela verso original dodBase II para rodar no IBMPC. Todo o trabalho foi fei-to em linguagem As-sembly. Jeb Long foi umdos fundadores da empre-
sa Ashton-Tate, ficou conhecido comum dos gurus do dBase e como res-ponsvel tambm pelas versesdBase III e dBase IV.
AS LINGUAGENSEm 1984 surgiu o Clipper, linguagemde programao compatvel com odBase III Plus, com desempenho de-zenas de vezes mais rpido que odBase original. At meados da d-cada de 90, o Clipper era o lder do
mercado de linguagens de desen-volvimento para micros. A partir da,as linguagens visuais, criadas pararodar no ambiente Windows,comeam a ganhar terreno.
Quando os bancos de dados rela-cionais estavam sen-do desenvolvidos, fo-ram criadas lingua-gens destinadas suamanipulao. O de-partamento de pes-quisa da IBM desen-volveu a linguagemSQL (Structured
Query Language) nosFoxPro para DOS: gerenciador baseado em dBase
Wayne Ratliff:criador do Vulcan
7/27/2019 8127780 Colecao InfoBanco de Dados
11/110
7/27/2019 8127780 Colecao InfoBanco de Dados
12/110
HISTRIA
14 < C OL E O I NF O
produtos fundamentados nas tec-nologias ASP e, mais recentemen-te, .Net, da Microsoft. No item es-pecfico dos gerenciadores de ban-cos de dados, os grandes nomes soIBM, Oracle e Microsoft. Com a ex-panso da conectividade, os ban-cos de dados estendem as possibi-lidades de acesso at aos PDAs.
AOS TERABYTESMas as tendncias apontam parasistemas de alto nvel de armaze-namento (da ordem de terabytes)que exigem rapidez e confiabili-dade de processamento, manuseioe anlise dos dados. Projetos gran-diosos, como o Genoma, apontampara esse tipo de demanda. Aomesmo tempo, bases de dadosgeolgicos, meteorolgicos e es-paciais requerem mais velocida-de e segurana. Tambm se tor-nam comuns as aplicaes empre-
sariais de data mining, data ware-house e data marts. Esses usos do
banco de dados exigem gerencia-dores capazes de dar respostas r-
pidas s empresas.Nessa rea, a Oracle se destaca
como o maior fornecedor de ban-cos de dados corporativos. Desde1985, o produto passou a tirar pro-veito da disseminao das redes lo-cais, dando suporte ao modelo clien-te-servidor. O Oracle 5, dessa po-ca, suportava consultas distribu-das. Em 1988, surgiu a verso 8, comsuporte ao desenvolvimento orien-tado a objeto e aplicaes multim-dia. Em 1999, sai a verso 8i i deinternet. O nmero atual 10g, sen-do o g indicativo da capacidade de
funcionar num grid de servidores.O Oracle tambm foi o primeiro ban-co de dados comercial a ofereceruma verso para Linux.
Finalmente, deve-se prestarateno ao crescimento das plata-formas de cdigo aberto, notada-mente o Linux. Junto com ele, des-pontam bancos de dados como o
MySQL, utilizado emaplicaes web. Es-sa mudana em di-reo ao software li-vre pode redefinir operfil do mercado
de banco de dados,em especial na fai-xa das aplicaesmdias e pequenas,a curto prazo, masabarcando as gran-des aplicaes, a
longo prazo.Oracle 10g: gerenciador de bancos de dados para clusters
7/27/2019 8127780 Colecao InfoBanco de Dados
13/110
SABE O QUE TUPLA?ENTENDA OS CONCEITOS QUE FAZEM DO BANCO DE DADOS
UM MUNDO PARTE NO UNIVERSO DO SOFTWAREPOR CELSO HENRIQUE PODEROSO DE OLIVEIRA
CONCEITOS
C OL E O I NF O> 15
odo mundo que usa te-lefone possui uma agen-da. Nela, cada amigotem nome, endereo,
nmero da linha, data de anivers-rio e e-mail, cada dado anotado numespao especial. Quando precisa-
mos ligar para algum contato, va-mos letra inicial do nome e bus-camos o nmero do telefone. Essaagendinha quase banal expressa
bem o que um banco de dados um armazm de informaes rele-vantes, organizadas de maneira coe-rente e lgica, que precisam ser re-cuperadas com freqncia.
No universo dos bits e bytes, obanco de dados envolve conceitos
importantes, que precisamos enten-der bem para torn-lo til e eficien-te. disso que trataremos aqui, co-meando pelo prprio.
T
Sistema gerenciador: coleo de programas que mantm as estruturas do banco
7/27/2019 8127780 Colecao InfoBanco de Dados
14/110
7/27/2019 8127780 Colecao InfoBanco de Dados
15/110
CONCEITOS
C OL E O I NF O> 17
ta fiscal, pedido de compra, ordemde servio), um local (armazm, se-de, filial) ou qualquer outro objeto domundo real. Cada entidade deve pos-suir diversas instncias do objeto querepresenta. Vamos exemplificar comos automveis. A entidade o gru-po carro. A instncia o objeto Hon-da Civic, Peugeot 206, VW Gol.
Quando se transpe a entidade pa-ra um modelo fsico, tem-se a tabe-la (no modelo relacional) ou a classe(no modelo orientado a objeto). Umaentidade representada por um re-tngulo com o respectivo nome.
ATRIBUTO
Qualificador lgico de um objeto, ser-ve para descrever ou caracterizar os
elementos de uma entidade. Cada atri-buto deve conter apenas uma carac-terstica do objeto. Esse ponto im-portante para no confundirmos atri-buto com entidade.
Um objeto deve ter algumas carac-tersticas especficas. Cada uma delasser um atributo do objeto. O inver-so tambm verdadeiro: um atribu-to no pode ter subdivises. Se utili-zar o exemplo da entidade carro, po-demos ter atributos como nome, mon-tadora, modelo etc.
Quando se transpe para o mode-lo fsico, os atributos se transformam
em colunas ou campos no modelo re-
lacional e em atributos ou proprieda-des no modelo orientado a objetos.
Os atributos so colocados dentro doretngulo que representa a entidadee abaixo do nome da prpria.
TUPLA
Nada mais do que o conjunto de ca-ractersticas do objeto que se quer re-presentar, a estrutura de atributos re-lacionados e interdependentes. A tu-pla seria a linha ou o registro de umatabela no modelo relacional e a ins-tncia no modelo orientado a objetos.
TABELA
Estrutura composta por linhas e co-lunas que serve para armazenar osdados em um banco de dados rela-cional. A linha indica uma ocorrn-cia do objeto do mundo real, e a co-luna serve para qualificar o objeto.Dessa forma, se imaginarmos umatabela PESSOA, ela teria em cada li-
nha uma pessoa e em cada colunaas informaes relevantes dessa pes-soa, como nome, peso, altura, datade nascimento, documento de iden-tificao, cor dos olhos, cor dos ca-
Entidade: grupo de coisas semelhantes
Tabela: estrutura com linhas e colunas
7/27/2019 8127780 Colecao InfoBanco de Dados
16/110
CONCEITOS
18 < C OL E O I NF O
cal, por exemplo, o nmero da no-ta no se repete e obrigatrio. Por
isso poder ser candidato para a co-luna chave. Uma chave geralmenteest destacada por um smbolo (as-terisco ou uma pequena chave) aolado do atributo correspondente.
Quando se analisa o modelo fsi-co, uma chave pode ser classifica-da como:s PRIMRIA: qualificador nico eobrigatrio. Deve haver uma nicachave primria em cada tabela.s ESTRANGEIRA: serve para rela-cionar duas tabelas. Vamos voltarao exemplo da Nota Fiscal. Cada no-ta est relacionada a um cliente. No-ta Fiscal uma tabela e cliente ou-tra. Cada tabela tem a sua prpriachave primria. Para relacionar ocliente com a nota fiscal, deixamosuma referncia coluna chave docliente na tabela nota fiscal (chaveestrangeira).s SECUNDRIA classifica os dados
nas tabelas. Geralmente, os ndicestm o objetivo de agilizar o proces-so de busca.
RELACIONAMENTO
Se uma entidade um conjunto decoisas semelhantes, natural queessas coisas guardem algum tipo
de relacionamento que seja impor-tante recuperar em algum momen-to. Quando dizemos que uma notafiscal emitida contra um cliente,podemos entender que estamos tra-tando de duas entidades diferen-tes: Nota Fiscal e Cliente. H, entre
Chaves: qualificadores das entidades
belos etc. A idia central que as ca-ractersticas do objeto permitam iden-tificar uma nica pessoa em cada li-nha da tabela.
CHAVE
Um ou mais atributos que permi-tem identificar uma nica ocorrn-cia na entidade. um qualificadornico. No modelo fsico, a chave o campo ou a coluna que contmum valor exclusivo e com preenchi-mento obrigatrio. Assim, no po-der haver o mesmo contedo da
coluna em duas linhas diferentes.Imagine uma chave para PESSOA.Nome seria uma boa coluna parachave? Naturalmente no, pois hpessoas que tm nomes iguais. CPFseria uma boa chave? Em alguns ca-sos sim, pois embora no tenha re-petio e seja um documento obri-
gatrio para os adultos, no paraos bebs. O que normalmente acon-tece em casos como esse criar-mos uma coluna.
Em alguns outros exemplos, a cha-ve seria localizada com mais facili-dade. Se analisarmos uma Nota Fis-
7/27/2019 8127780 Colecao InfoBanco de Dados
17/110
CONCEITOS
C OL E O I NF O> 19
essas duas entidades, uma relaode interdependncia, ou seja, para
se emitir uma Nota Fiscal, neces-srio que haja um Cliente. A essainterdependncia damos o nomede relacionamento. Na prtica, sem-pre que uma ou mais tuplas de umaentidade guardarem alguma rela-o com uma ou mais tuplas de ou-tra entidade teremos um relaciona-mento entre as entidades.
Um relacionamento pode ser clas-sificado de duas formas: opcionali-dade e cardinalidade.
A opcionalidade indica se obri-gatria ou no a ocorrncia ou in-dicao de uma tupla de uma en-
tidade na outra. Dessa forma, po-demos dizer que obrigatria apresena de um Cliente em umaNota Fiscal, mas opcional a exis-tncia de uma Transportadora, porexemplo. De outro lado, o Clientepode ou no estar vinculado a umaNota Fiscal. O mesmo acontece coma Transportadora.
A cardinalidade indica quantasocorrncias de uma tupla se rela-cionam com a outra tupla. Sabemosque cada Cliente pode estar vincu-lado a zero, uma ou muitas NotasFiscais, enquanto cada Nota Fiscal
est relacionada a um nico Clien-te. Como voc pode notar, a cardi-nalidade e a opcionalidade so sem-pre expressas de um e de outro la-do do relacionamento.
A cardinalidade pode ser:s UM PARA UM (1:1) : quando cadatupla de uma entidade est relacio-
nada apenas a zero ou a uma tuplada outra entidade (lembre-se que ze-
ro ou um a opcionalidade). Esse ti-po de relacionamento no o maiscomum, pois sempre se deve ques-tionar a vantagem de manter os da-dos separados em duas entidades.Note que sempre h um custo vincu-lado criao e manuteno de umatabela. Se o custo compensar, deve-se manter separado. Do contrrio, melhor unir as duas entidades.s UM PARA MUITOS (1:M): quan-do cada tupla de uma entidade es-t relacionada a zero, uma ou maistuplas da outra entidade (no es-quea que o zero ou um a opcio-
nalidade). Este o relacionamentomais comum.s MUITOS PARA MUITOS (M:M):
quando h ocorrncias de mltiplosrelacionamentos entre as tuplas deduas entidades. Esse relacionamen-to, apesar de existir, no passvelde implementao em um banco de
Relacionamento: muitos para muitos(acima); um para muitos (abaixo)
7/27/2019 8127780 Colecao InfoBanco de Dados
18/110
CONCEITOS
20 < C OL E O I NF O
dados relacional. Sempre que seidentificar essa situao, deve-se
criar uma entidade entre as duasentidades, classificadas como fun-damentais. Essa nova entidade, clas-sificada como entidade associativa,deve conter, pelo menos, as chavesdas duas entidades fundamentais.
Uma das formas de representaro relacionamento o p-de-gali-nha para indicar a cardinalidademuitos, um pequeno trao para in-dicar a cardinalidade um, o trace- jado para indicar opcionalidade e osegmento de reta contnuo para in-dicar obrigatoriedade. Uma outraforma indicar a opcionalidade comum pequeno crculo antes do umou muitos da cardinalidade. Lem-bre-se: so apenas convenes. Oimportante que o relacionamen-to esteja claro e esteja representa-do no modelo de dados.
INTEGRIDADE REFERENCIALMecanismo utilizado pelos gerencia-dores de bancos de dados para man-ter a consistncia das informaesarmazenadas. Suponha que estamoscadastrando uma Nota Fiscal e indi-camos um cdigo de cliente (que re-laciona com a tabela Cliente) inexis-tente. Outra situao tentar excluirum Cliente que tenha diversas No-tas Fiscais emitidas. Como iramosrecuperar a informao, caso o ban-co de dados permitisse a exclusodo Cliente? Simplesmente perdera-mos o elo entre as tabelas, e a infor-
mao armazenada estaria invlida.
A principal forma de garantir aintegridade entre tabelas se d por
meio do vnculo entre a chave pri-mria de uma tabela com a chaveestrangeira da outra tabela. As co-lunas das duas tabelas armazenamas informaes que permitem es-tabelecer o relacionamento entreas linhas das tabelas. Assim, o c-digo de cliente 1 da tabela Clien-te, cujo nome Joo, ser arma-zenado na coluna cdigo do clien-te da tabela Nota Fiscal sempreque se quiser indicar que o Joocomprou determinados produtos.No ser possvel excluir Joo (c-digo do cliente 1) enquanto hou-ver Notas Fiscais emitidas contraesse cliente.
RESTRIESUtilizam-se as restries (constraints)para melhorar a qualidade da infor-mao guardada nas tabelas do ban-
co. As restries mais comuns soa chave primria e a estrangeira.Mas h outras restries bastanteimportantes:s NULOS: uma coluna que no te-nha valor inicializado considera-da uma coluna nula. Nem sempre adequado permitir que uma co-luna no tenha valores atribudos.Imagine uma linha na tabela Clien-te cujo nome seja nulo. Como po-demos identificar o cliente?s EXCLUSIVOS: suponha que se te-nha criado uma tabela Cliente cujocdigo do cliente no seja um do-
cumento, como CPF ou RG. Mesmo
7/27/2019 8127780 Colecao InfoBanco de Dados
19/110
CONCEITOS
C OL E O I NF O> 21
no sendo uma coluna chave, es-ses valores no podem ser duplica-dos em clientes (linhas) diferentes.
Para isso definimos que sejam ad-mitidos somente valores exclusivos.O que a difere de uma chave pri-mria que esta ltima no podeassumir valores nulos.s PADRO: muito comum que,quando um valor no informado,o sistema assuma um valor-padropara a coluna (como data de emis-so de uma Nota Fiscal ou quanti-dade de um determinado produtoem uma Nota Fiscal).s DOMNIO: as vezes necessriodeterminar um intervalo de valorespossveis para uma determinada co-
luna. o caso do sexo, por exem-
Restries: melhoram a qualidade da informao armazenada nas tabelas do banco
plo, que pode assumir apenas osvalores Masculino ou Feminino.
TRANSAOOcorre sempre que houver uma mo-dificao no contedo das tabelasde um banco de dados. Dessa for-ma, uma incluso, alterao ou ex-cluso geram uma transao. Emgerenciadores de banco de dados,o controle sobre o momento da efe-tiva gravao (COMMIT) dos dadosou abandono da operao (ROLL-BACK) realizado pelo usurio dobanco de dados ou pelo sistema. Atransao representa um conjuntode operaes que so realizados nabase de dados para produzir um re-
sultado final.
7/27/2019 8127780 Colecao InfoBanco de Dados
20/110
7/27/2019 8127780 Colecao InfoBanco de Dados
21/110
CONCEITOS
C OL E O I NF O> 23
Procedimentos armazenados: cdigos que ficam armazenados para usar depois
para o novo grupo. Caso no hajaum bom atributo para ser a chave,
deve-se cri-lo. isso que foi feitocom o Cliente e Produto.s 3 - FORMA NORMAL (3FN): depoisque os grupos de dados estiverem na2- Forma Normal (e jamais antes dis-so), localizam-se atributos com de-pendncia transitiva. Calma! No to complicado. Dependncia transi-tiva ocorre quando um dado pode serobtido por meio de outro, exceto achave. Isso porque os atributos de-pendem da chave. At que voc sehabitue, tente localizar campos quepossam ser substitudos por frmu-las matemticas. No exemplo, temoso atributo Valor Total no Item da No-ta e o Valor Total da Nota Fiscal. Es-ses atributos devem ser excludos,pois podem ser obtidos por meio deum clculo realizado com outros atri-butos. Com os dados normalizados, possvel criar as tabelas.
PROCEDIMENTOSARMAZENADOS
So pequenos cdigos executadosem um banco de dados que ficamguardados para posterior utiliza-o. Podem ser stored procedures(procedimentos armazenados),stored functions (funes armaze-nadas), trigger (gatilho) e package(pacote). Um procedimento umconjunto de comandos dentro deuma estrutura lgica, com o obje-tivo de realizar uma ao no ban-co de dados. A diferena entre pro-cedimento e funo que esta l-tima retorna valor.
Gatilhos so procedimentos dispa-rados por eventos do banco de da-dos (incluso, alterao ou excluso).Por fim, um pacote um conjunto defunes, procedimentos e outras es-truturas que so armazenados emconjunto para facilitar a manutenoe a segurana da informao.
7/27/2019 8127780 Colecao InfoBanco de Dados
22/110
PLANEJE BEM OSEU BANCOSIGA O ROTEIRO PARA CRIAR UM BANCO DE DADOS QUE
ACOMPANHE AS TRANSFORMAES DA EMPRESAPOR CELSO HENRIQUE PODEROSO DE OLIVEIRA
CRIAO
24 < C OL E O I NF O
criao de um banco dedados um processoque envolve uma sriede competncias. Hou-
ve tempo em que esse processo es-tava reduzido a identificar um oumais objetos, escolher uma formade armazenamento, algumas carac-tersticas desses objetos e pronto.Geralmente, a prpria estrutura dobanco de dados era vinculada lin-guagem de programao.
Com o passar do tempo, a tecno-logia evoluiu e foi separada das lin-
guagens de programao. Ambien-tes completos de administrao fo-ram desenvolvidos e sua utilizaocontribuiu para disseminar as in-formaes de maneira adequada econsistente.
Atualmente, os produtos estomuito mais complexos e permitemao profissional realizar um trabalhoque pode contribuir para a melhorutilizao da informao. De simpleslocal de armazenamento, o banco dedados evoluiu para um verdadeirorepositrio de informaes das em-presas. o ambiente adequado pa-
ra armazenar e recuperar dados ope-
racionais, alm de dar suporte to-mada de deciso por parte da m-dia e alta gerncia das corporaes.No se consegue atingir esse obje-tivo sem que se observem algumasregras. Por isso, trataremos aqui daestratgia para a criao de umbanco de dados.
PLANEJAMENTOE ESCOLHAPlanejar e escolher o melhor bancode dados uma tarefa extremamen-te importante no processo de criao.
A escolha certa evita frustraes nasoperaes do dia-a-dia e na evoluoque o produto deve ter para acom-panhar o crescimento da empresa.
Planejar saber onde se quer che-gar e estabelecer os meios adequa-dos para estar l. necessrio olharpara frente e analisar como vocquer que as coisas estejam no futu-ro. antever situaes que podemdefinir o sucesso ou no do seu em-preendimento. Portanto, antes deescolher o produto, pense onde vo-c quer chegar. Enxergue o bancode dados como um meio para atin-
gir sua meta.
A
7/27/2019 8127780 Colecao InfoBanco de Dados
23/110
CRIAO
C OL E O I NF O> 25
Com isso, dependendo do caso, sea sua empresa desenvolve sistemas,
a deciso poder ser totalmente di-ferente de uma construtora, porexemplo. Baseie-se em aspectos tc-nicos e mercadolgicos para definiro produto com o qual voc ir con-
viver durante um bom tempo (tenhaisso em mente: no se troca de ban-
co de dados seno com alguma di-ficuldade). Veja na tabela abaixo al-gumas questes que podem ajudarna escolha do produto ideal para assuas necessidades.
GUIA PARA A ESCOLHA DO GERENCIADOR>H uma empresa ou comunidade responsvel pelo produto?>Como est a sade financeira dessa empresa? Como a
participao dos membros da comunidade?
>Qual o compromisso tecnolgico da empresa? Houve evoluonos ltimos anos? (um ano de atraso em informticapode ser fatal)
>Qual a participao de mercado do produto? (produtos compequena participao podem sumir ou ser absorvidos poroutras empresas)
>Quanto tempo de vida tem o produto?>Qual tipo de empresa o utiliza?>Quando foi lanada a ltima verso? Como o fabricante resolve
problemas de segurana (atualizaes e correes)?
>O produto possui as caractersticas mnimas de um sistemagerenciador de banco de dados (controle de transaes,integridade referencial, programao, backup e recuperao,segurana de acesso, compatibilidade)?
>Como o ambiente de administrao do banco de dados? Hpossibilidade de administrao remota?
>Voc vai precisar de um administrador de banco de dados (DBA)o tempo todo ou esse trabalho poder ser feito remotamente?
>H profissionais qualificados no mercado para administrar obanco? Quanto custa a mo-de-obra?
>H produtos (ERP, CRM, BI etc.) adequados para a sua empresaque utilizam o banco de dados?
>Qual o volume mdio de transaes que voc vai realizar e comoo produto se comporta com isso?
7/27/2019 8127780 Colecao InfoBanco de Dados
24/110
7/27/2019 8127780 Colecao InfoBanco de Dados
25/110
CRIAO
C OL E O I NF O> 27
Outras geram os scripts para seremexecutados no banco de dados. S
que, para chegar aqui, necessrioficar atento a alguns detalhes.
PADRONIZAO sempre importante manter um pa-dro para o nome dos objetos, colu-nas e outros elementos. Mesmo quevoc trabalhe sozinho em um proje-to, bem provvel que no futuro ou-tras pessoas tenham de atualizar aqui-lo que voc fez. A padronizao co-mea na documentao do projetoe continua em todo o processo fsi-co de criao do banco de dados.
Toda equipe deve estar envolvidapara definir o que e como ser essepadro. Imagina-se que, quanto maisclaro for o nome da entidade, porexemplo, melhor ser para a pessoaentender o que est armazenado ali.Parece bvio, mas algum tempo atrsera comum utilizar nomes estranhos,
muito mais vinculados aos progra-mas que mantinham a entidade doque ao objetivo dela. Algunsanalistas at se valiam des-se expediente para manter-se no emprego quantomais obscuro, mais depen-dncia do analista.
TABELAS E COLUNASSe eu identifiquei um objetoque armazene as informaesde um veculo, devo dar-lheo nome de VEICULO. Em cer-tos casos, alguns analistas pre-
ferem indicar qual o mdulo
CDIGO
NMERODESCRIONOMEDATAVALORQUANTIDADESIGLADOMNIO
PADRONIZE AS COLUNAS
OPO 2
CD
NR
DS
NM
DT
VL
QT
SG
DM
OPO 1
COD
NUM
DES
NOM
DAT
VAL
QTD
SIG
DOM
do sistema que mantm aquela es-trutura. Em outros, acrescenta-se a
estrutura departamental que realizaesse trabalho. Essa ltima opo apior, visto que h mudanas freqen-tes nas funes departamentais deuma empresa moderna. Particular-mente, creio que ambas situaes sodesnecessrias, visto que atualmen-te uma classe destacada para essafuno. A classe normalmente tam-bm tem um nome claro e objetivo.
Se h atributos importantes pa-ra serem mantidos, como cor, mo-delo, ano de fabricao, ano do mo-delo e montadora, deve-se colocaresses nomes nas colunas.
Outro ponto importante, mas nodeterminante, especificar a classifi-cao do dado junto com o nome. As-sim, se a cor do veculo fizer refern-cia a uma tabela de cores e, portan-to, eu for armazenar o cdigo da cor, comum utilizar-se CD ou COD antes
do nome. O nome do campo ficariaCDCOR, por exemplo.
CLASSIFICAO
7/27/2019 8127780 Colecao InfoBanco de Dados
26/110
CRIAO
28 < C OL E O I NF O
Como no possvel utilizar es-paos na definio do nome das co-
lunas (ou mesmo objetos), utiliza-se o caractere sublinhado (_) parasubstituir o espao. A tabela ficariacomo no exemplo da figura abaixo.
TIPOS DE DADOSA definio do tipo de dados tam-bm exige padronizao. Parecebvio que um dado que receber
apenas contedo numrico devaser definido como NUMBER, DECI-MAL, INTEGER, FLOAT ou qualqueroutro tipo que seja otimizado pa-ra este fim. O mesmo acontece comalfanumricos e datas, mas h al-gumas observaes a considerarnessa escolha.
O tipo de dado numrico, de ummodo geral, possui mecanismosque fazem com que as buscas se- jam mais rpidas do que as queocorrem em colunas alfanumri-cas. Ele tambm ocupa menos es-pao fsico para armazenamento.
Por isso, chaves primrias (e con-
seqentemente estrangeiras) sodefinidas por campos numricos.
Colunas pesquisadas com freqn-cia, como CPF, tambm so defi-nidas como numricas.
A maioria dos gerenciadores debanco de dados trabalha com doisgrupos de tipos de dados alfanu-mricos: CHAR e VARCHAR (ouVARCHAR2, no Oracle). O primei-ro utiliza todo o espao especifi-cado, enquanto que o segundo varivel, usando, no mximo, o es-pao predeterminado. Isso faz comque o segundo, por utilizar apenaso espao efetivamente ocupadopelo contedo, otimize o armaze-namento e no deixe buracos noscontedos. DBAs experientes le-vam em considerao o volume dealteraes no contedo para essadefinio. Isso porque, caso umcontedo seja alterado com fre-qncia, a atualizao poder ge-
rar uma fragmentao da informa-o quando includo, o conte-do ocupou um espao e, depois deuma alterao para maior, quan-do no h espao na seqncia,ser colocado em outro espao f-sico do disco.
Campos que armazenam datasdevem ser definidos dessa formapara facilitar operaes de buscae at mesmo operaes matem-ticas entre elas. O padro SQL pos-sui uma srie de comandos espe-cficos para calcular intervalo en-tre datas, extrair ano, dia, ms etc.
Para contedos muito grandes, co-
PROJETOLGICO DEDADOS
PROJETO FSICODE DADOS
CRIAO DOBANCO DE DADOS
Anlise e modelagemutilizando o Modelo deEntidade eRelacionamento eNormalizao de Dados
Desenho com definiode tabelas, ndices,vises etc.
Criao de scripts paraexecuo do gerenciadorde banco de dados
BANCO DE DADOS CRIADO
PROCESSO DECRIAO DE BANCODE DADOS
7/27/2019 8127780 Colecao InfoBanco de Dados
27/110
CRIAO
C OL E O I NF O> 29
mo arquivos XML, imagens, sons etextos extensos deve-se utilizar o
LOB. Normalmente h uma separa-o para binrios (BLOB), adequa-dos para armazenamento de ima-gens e sons, e alfanumricos (CLOB).No caso especfico de XML, pos-svel que o gerenciador de bancode dados tenha algum mecanismomelhor de armazenamento.
PROGRAMAOSempre que possvel, prefira criaros mdulos que utilizam e manipu-lam dados dentro do banco de da-dos. Apesar de atualmente haveruma grande difuso da necessida-de de independncia de banco dedados por meio da utilizao de umacamada intermediria que assumaessa responsabilidade, inegvelque o gerenciador do banco de da-dos o ambiente mais adequadopara manter e atualizar dados.
Ao se programar em qualqueroutra camada que no a de dados,o trfego de informaes pela re-
de aumentado. Se voc optar porcolocar a camada de aplicao no
mesmo servidor (ou servidores),poder comprometer seu desem-penho pelo excesso de uso.
Assim, prefira programar o ban-co de dados para rotinas que en-volvam acesso e manipulao dedados. Os programas devem seguira padronizao da empresa no quediz respeito aos mdulos: definiode variveis, letras maisculas e/ouminsculas para comandos etc.
INTERFACES DEADMINISTRAOTo importante quanto criar estru-turas estveis para suprir as ne-cessidades de informao da em-presa a tarefa de manter o ban-co de dados com um nvel aceit-vel de tempo de resposta. Para is-so, necessrio ter uma atenoespecial na administrao.
As interfaces de administraotm evoludo bastante para sim-plificar o processo. Mesmo os ge-renciadores de cdigo aberto pos-suem interfaces amigveis que per-mitem criar e manter todas as es-truturas do banco rapidamente. Al-gumas podem ser acessadas re-motamente, o que facilita o pro-cesso de manuteno e acompa-nhamento que o DBA faz no ban-co de dados.
A tendncia que os gerencia-dores sejam cada vez mais auto-matizados, em especial no que diz
respeito ao desempenho. Os ajus-
Programao: no SQL Server 2005 d
para criar consultas sem escrever cdigo
7/27/2019 8127780 Colecao InfoBanco de Dados
28/110
CRIAO
30 < C O LE O I N FO
tes (tuning) podem ser realizadossem a interferncia direta do DBA.
O administrador supervisiona e va-lida o que foi feito e, em caso deproblemas, adota outras medidas.
SEGURANANunca pouco lembrar que acriao de usurios e a rotina debackup seja planejada com coe-
rncia. Usurios com superpode-res no so desejveis em bancosde dados. Deve haver poucos, depreferncia um nico DBA por ban-co. Deve ser objeto de estudo cons-tante a verificao e a auditoria dosusurios e as transaes realiza-das. No basta confiar apenas nosistema para esse controle. Os ge-renciadores possuem interfaces deadministrao relativamente sim-ples. Usurios genricos podemcomprometer a segurana dos da-dos nessa situao.
A rotina de backup deve ser tes-
tada inclusive com restauraes pe-ridicas, para determinar a exatidoe o conhecimento do processo. Nor-malmente, para backup, h al-gumas formas disponveis nosprincipais gerenciadores. Asprincipais so:s CPIA COMPLETA DOS DA-
DOS (OFF LINE): interrompe-se a execuo do banco de da-dos e copiam-se os arquivosde dados. Em caso de pane,pode-se restaurar todo o ban-co que retornar ao momen-to em que foi feita a cpia.
s CPIA COMPLETA DOS DADOS(ON LINE): as transaes que so efe-
tuadas so armazenadas em local es-pecfico para serem copiadas paraum meio fsico. Em caso de pane nobanco de dados, possvel retornara um ponto no tempo, at o limitedas transaes gravadas no disco. Is-so faz com que a perda de dados se- ja consideravelmente menor.s SERVIDOR STANDBY: a cpia dastransaes realizada em um ser-vidor separado. Em caso de pane,o outro servidor assume a funodo servidor que falhou.
CONCLUSOCom planejamento, padronizao econtrole possvel fazer com queos dados da empresa possam seracessados em segurana e rapida-mente. Unir diversas tabelas no criar um banco. O processo come-a com a escolha do gerenciadoradequado s necessidades e termi-
na com a execuo de um plano ro-busto e completo para o que pre-ciso hoje e ser necessrio amanh.
BI:ferramenta para necessidade atual e futura
7/27/2019 8127780 Colecao InfoBanco de Dados
29/110
O BANCO FALASQLQUSCONHEA O IDIOMA DOS BANCOS DE DADOS E AS
LINGUAGENS DE ACESSO A ELESPOR ANDR CARDOZO
LINGUAGENS
C OL E O I NF O> 31 ILUSTRAO PAVO
s programadores podemescolher a linguagem quequiserem para construir
aplicativos que acessemo banco de dados. Mas no tm comoescapar da SQL (Structured Query Lan-guage). Se o TCP/IP o idioma da in-ternet, podemos dizer que a SQL tema mesma funo nos bancos de da-dos. A linguagem foi desenvolvida nadcada de 70 pela IBM com uma ni-
ca finalidade: manipular bancos de da-dos. A SQL em muitos casos pro-nunciada como SEQUEL adotada
por todos os sistemas gerenciadoresmais utilizados no mercado, como Ora-cle, MySQL e Microsoft SQL Server.
No nvel mais avanado, um pro-gramador precisa se dedicar paradominar a SQL, mesmo porque di-versos bancos de dados possuem ex-tenses proprietrias, funes mais
O
7/27/2019 8127780 Colecao InfoBanco de Dados
30/110
LINGUAGENS
32 < C OL E O I NF O
avanadas que s funcionam naque-le sistema. Os comandos bsicos so
intuitivos e podem ser usados semdificuldade por quem tem noo deprogramao. Veja alguns:CREATE:cria tabelasSELECT:seleciona dadosINSERT:inclui dados em tabelasUPDATE:atualiza dadosDELETE:apaga dados
Alm das expresses principais,outros comandos muito usados soo where, que inclui a condio, eo order by, que ordena o resulta-do da consulta SQL. Veja como elasfuncionam no exemplo abaixo:SELECT nome,endereco FROMclientes WHERE estado = spORDER BY nome
Esse comando seleciona as colu-nas nome e endereco da tabelaclientes em que o estado iguala sp (condio imposta pela ex-presso where). Portanto, somen-
te os clientes de So Paulo. Os re-sultados so ordenados por nome.A tabela poderia conter outras co-lunas, como idade e sexo, masnesse exemplo usamos s nomee endereco. Para selecionar todasas colunas, basta trocar nome,en-dereco por *, como abaixo:SELECT * FROM clientesWHERE estado = sp ORDERBY nome
PL/SQL, A TURBINADAA linguagem PL/SQL uma extensoda SQL especializada no banco de da-
dos Oracle. Ela combina a facilidade de
manipulao de dados da SQL com asfacilidades de programao de uma lin-
guagem procedural. Permite criar ob- jetos de esquema, como gatilhos, pro-cedimentos armazenados e pacotes.
A linguagem PL/SQL utiliza o con-ceito de bloco estruturado. Esses blo-cos so compostos por procedures efunes. Um bloco tem a estruturabsica composta por trs partes:DECLARE:seo opcional, em quetodos os objetos so declarados;BEGIN: em que os comandosPL/SQL so colocados;EXCEPTION:em que os erros sotratados.
>LINGUAGENS DE ACESSOOpes no faltam para os desen-volvedores de programas de acessoa banco de dados. As mais popula-res so ASP, Perl, PHP e Java. Cadauma dessas linguagens tem suas van-tagens e desvantagens, e a escolha
depende de uma srie de fatores, co-mo compatibilidade, custo e porta-bilidade. Conhea essas opes.
PHP, A POPULARUma soluobastante popularentre os web-masters de sites
dinmicos o PHP (Personal HomePage), criado pelo programador Ras-mus Leedorf. A linguagem funcio-na tanto em Unix quanto em Win-dows e possui suporte para diver-sos bancos de dados, incluindo
MySQL, Sybase, SQL e Oracle.
7/27/2019 8127780 Colecao InfoBanco de Dados
31/110
LINGUAGENS
C OL E O I NF O> 33
A sintaxe possui alguns elemen-tos derivados do Perl, mas bem
mais simples e exige apenas noesbsicas de programao. Alm dis-so, h outra qualidade muito impor-tante, que beneficia uma parte sen-svel de todos ns: o bolso. O inter-pretador PHP (programa que pro-cessa as pginas feitas nesse for-mato) gratuito, e basta baixar einstalar no servidor para comeara criar um website dinmico.
ASP, A OPO WINDOWSO ASP (Active Ser-ver Pages) no exatamente umalinguagem de
programao, mas o que a Microsoftdefine como ambiente de execuode scripts. Na maior parte das vezes,as instrues so escritas em VBScript,que derivado do Visual Basic, tam-bm filhote da Microsoft.
A penetrao do Visual Basic nomercado contribui bastante para ocrescimento do ASP. Como a quanti-dade de programadores VB gran-de, fica mais fcil para as empresascontratarem profissionais que desen-volvam aplicaes em VBScript.
Aderir ao ASP significa quase sem-pre optar pelo mundo Windows, umavez que as pginas ASP s rodam na-tivamente em servidores Windowscom servidor web IIS (Internet Infor-mation Server), da Microsoft. pos-svel rodar pginas ASP em sistemasUnix por intermdio de solues co-
merciais, como o ChiliASP, ou usan-
do o OpenASP, no servidor web Apa-che. Mas a implementao desse ti-
po de soluo costuma ser problem-tica para os webmasters.
JAVA, A ECLTICAA linguagem Java a al-ternativa de programa-o criada pela Sun Mi-crosystems. uma lin-guagem robusta, comfunes complexas.
Possui como principal vantagem, aportabilidade roda em qualquerplataforma, de palmtop a main-frame, de sistemas embarcados aprogramas srios de internetbanking, por exemplo. Profissionaisespecializados em Java esto entreos mais disputados do mercado.
PERL, A VETERANAA linguagem Perl(Practical Extraction
and Reporting Lan-guage) foi criada em1987 pelo progra-
mador Larry Wall para resolver tare-fas de administrao em sistemas Unix.Wall divulgou a primeira verso dePerl nas listas de discusso da Use-net e logo programadores de todo omundo comearam a dar sugestespara o aprimoramento da linguagem.Uma das vantagens de Perl a por-tabilidade. Os scripts podem ser trans-feridos do Unix para o Windows e vi-ce-versa com pouca ou nenhuma mo-dificao. A linguagem expandida
pelo uso de mdulos.
7/27/2019 8127780 Colecao InfoBanco de Dados
32/110
UM SQL SERVERFCIL DE USARA VERSO GRTIS DO BANCO DE DADOS DA MICROSOFT
TEM ASSISTENTE E MUITOS RECURSOSPOR NIVALDO FORESTI
TESTE/SQL SERVER
34 < C OL E O I NF O
que no faz a concorrn-cia. Bastou os bancos dedados de cdigo abertocomearem a ganhar es-
pao nas corporaes, os fabricantestradicionais passarama oferecer verses gra-tuitas com a maioriados recursos das ver-ses pagas e algumasrestries. A Microsoftinaugurou esse movi-mento, lanando no fi-nal do ano passado o SQL Server 2005Express e seus trs irmos pagos:
Workgroup, Standard e Enterprise. De-pois, vieram a Oracle e a IBM.Como as verses
comerciais irms, oSQL Server 2005 Ex-press vem integradoao Visual Studio .Net,o que se traduz em fa-
cilidade para o desen-volvimento de aplica-es. O INFOLAB tes-tou o programa num
servidor Pentium 4 de 2 GHz com 1GB de memria RAM.
Seguindo o padro dos produtos de-senvolvidos pela Microsoft, a instala-o do Express extremamente sim-
ples e fcil de fazer. Umassistente leva o usu-rio pela mo por todasas etapas do processo.Com alguns cliques demouse, voc instalauma instncia do ge-renciador de banco de
dados. Mas nem tudo perfeito. A su-te de administrao e desenvolvimen-
to SQL Server Express ManagementStudio Community Technology Pre-
O
FIQUE LIGADO
>Pequenas empresase desenvolvedores soo alvo do SQL Server2005 Express
Management Studio:sute de administraoe desenvolvimento
7/27/2019 8127780 Colecao InfoBanco de Dados
33/110
TESTE/SQL SERVER
C OL E O I NF O> 35
SQL SERVER 2005EXPRESSFABRICANTE
PR
CONTRAS
INSTALAO
GERENCIAMENTO
FERRAMENTAS
DESENVOLVIMENTO
SEGURANA
AVALIAOTCNICA(1)
PREO
CUSTO/BENEFCIO
ONDE ENCONTRAR
Microsoft
Fcil de usar e gerenciar
Suporta apenas umprocessador, 1 GB dememria e bancosde at 4GB
8,5Rpida, com verificaode pr-requisitos eprimeiros passos
7,5Possui administraosimilar da versoStandard, mas faltamfuncionalidades
6,5Fica devendo ferramentascomo o DTS para aimportao de dados
8,5Traz todos os recursos dasdemais verses, inclusivesuporte nativo a XML
8,0Conta com criptografiabaseada em chavese replicao de dadosvia web
7,6
Gratuito
www.info.abril.com.br/download/4339.shtml
(1) Mdia ponderada considerando os seguintes itens e respectivos pesos:Instalao (10%), Gerenciamento (35%), Ferramentas (35%),Desenvolvimento (10%) e Segurana dos dados (10%). O SQL ServerExpress ganha 0,2 ponto na avaliao tcnica devido ao bom desempenhodo seu fabricante na Pesquisa INFO de Marcas 2005.
view (CTP) no acompanha a instala-o. preciso fazer o download se-
paradamente do CTP no endereowww.info.abril.com.br/download/4454.shtml .
RECURSOSNo espere que a Microsoft tenha da-do tudo de bandeja nessa verso dis-ponvel gratuitamente para voc. Fal-tam vrios recursos. Voc no encon-trar o DTS (Data TransformationSystem), o que dar muita dor de ca-bea na hora de importar dados deoutros formatos de arquivo para den-tro do banco de dados. Tambm noter a pesquisa em texto, os servios
de notificao e os recursos de busi-ness intelligence que tornam a ver-so Enterprise bastante atraente pa-ra as empresas maiorzinhas.
Outras restries importantes soo suporte a apenas um processador,somente 1 GB de memria RAM e at4 GB de tamanho do banco de dados.Se bem que difcil uma pequena em-presa bater nesses limites.
FUNCIONALIDADESNem tudo problema. O mecanismode acesso a dados MSDE (MicrosoftDesktop Engine), um SQL Server ru-
dimentar para desktops, desapare-ceu com o advento do Express. E, comele, sumiu a restrio de desempe-nho quando existiam mais de cincoconexes simultneas ao banco dedados. Toda a funcionalidade progra-mtica est no Express, at mesmo osuporte a XML e a integrao da lin-
guagem CLR (Common LanguageRuntime) da .Net com a Transact-SQL,
a linguagem de comandos SQL da Mi-crosoft. O novo conjunto de objetose a habilidade de agir como clientena replicao de dados e nos cen-rios de envio de mensagens no fal-taram na verso gratuita. Em suma,d para aproveitar bastante at seremnecessrias mais funcionalidades.
7/27/2019 8127780 Colecao InfoBanco de Dados
34/110
ORACLE EMVERSO LIGHTA EDIO GRATUITA DO PODEROSO BANCO DE DADOS
CHEGA COM RECURSOS DE SOBRAPOR ERIC COSTA
TESTE/ORACLE EXPRESS
36 < C OL E O I NF O
Pgina principal: portal de acesso a funes e links com a comunidade Oracle
eguindo os rastros daMicrosoft, a Oracle pro-duziu uma verso ma-gra de seu poderoso
banco de dados, a Oracle 10g ExpressEdition, de olho nas pequenas em-presas. O software inclui os princi-pais recursos das verses comerciaisdo irmo robusto e gratuito. Emcontrapartida, limita o tamanho m-ximo da base de dados a 4 GB, almdo hardware usado. O gerenciadorde bancos de dadosusa apenas um pro-
cessador (caso o com-putador tenha maisde um) e, no mximo,1 GB de RAM, mesmoque o micro possuamais memria.
A licena do Oracle Express bas-tante aberta: possvel, sem pagarnada, distribuir e implantar o pro-grama, alm de us-lo para desen-volvimento de software. Nos testesda INFO, feitos com o sistema ope-racional SUSE Linux 10.0, o OracleExpress Edition teve bom desem-penho, sendo instalado rapidamen-te num micro com processador Pen-tium 4 de 2,4 GHz, com 512 MB dememria RAM. A instalao bas-
tante simples. Toda aadministrao do
banco de dados fei-ta pelo browser, o quetambm facilita oacesso remoto, paraquem quer deixar oservidor afastado.
S
FIQUE LIGADO
>Limitaes tornamo Oracle 10g Expressindicado para aspequenas empresas eos desenvolvedores
7/27/2019 8127780 Colecao InfoBanco de Dados
35/110
Utilitrios: inclui importao de XML
TESTE/ORACLE EXPRESS
C OL E O I NF O> 37
Apesar de ser relativamente sim-ples, a interface web funciona bem,trazendo recursos suficientes paraa criao e a manuteno de ban-cos de dados. Ainda existe, claro,uma ferramenta para migrar umbanco de dados do Oracle Expresspara o Oracle 10g pago.
Uma grande vantagem da versoExpress do Oracle em relao ao tam-bm gratuito MySQL est no supor-te ao PL/SQL, a verso turbinada doSQL feita pela Oracle. Com ela, pos-svel acrescentar mais funcionalida-de em stored procedures (ou rotinas
armazenadas), o que pode diminuira necessidade de manuteno futu-ra dos programas que usem o ban-co de dados. Outra vantagem do Ora-cle Express a robustez do bancode dados, que traz a base do respei-tado Oracle 10g. Para quem vai de-senvolver software, a verso Expresstem o mesmo suporte a linguagensde programao do Oracle 10g, in-tegrando-se com Java, C++, PHP,com os principais dialetos da tecno-logia .Net (como C# e VB.NET), en-tre outros. O suporte do Oracle Ex-press feito pelos prprios usurios,
que ajudam uns aos outros em um
Browser: controle sobre cada objeto
ORACLE 10GEXPRESS EDITIONFABRICANTE
PRS
CONTRAS
COMPATIBILIDADE
INSTALAO
RECURSOS
FERRAMENTAS
AVALIAO TCNICA
PREO (R$)(1)
CUSTO/BENEFCIO
ONDE ENCONTRAR
Oracle
Dispensa hardwareparrudo, traz recursosde primeira
Limitaes ao tamanho dobanco de dados, memria e CPU usadas
8,0Roda em Windows e Linux(distribuies compatveiscom pacotes RPM)
8,0Instalao simples e diretatanto no Windows quantono Linux
8,5Suporte a PL/SQL,integra-se com Java, C++,VB.NET, entre outraslinguagens
8,0Gerenciamento pelobrowser, com ferramentade construo de consultas
8,4
Gratuito
www.info.abril.com.br/download/4346.shtml
(1) Mdia ponderada considerando os seguintes itens e respectivos pesos:Compatibilidade (20%), Instalao (20%), Recursos (30%) e Ferramentas(30%). O Oracle Express ganha 0,2 ponto na Avaliao Tcnica devido aobom desempenho do seu fabricante na Pesquisa INFO de Marcas 2005.
grupo de discusso mediado por pro-fissionais da Oracle. Ao baixar o Ora-cle Express, possvel cadastrar-senesse grupo automaticamente.
7/27/2019 8127780 Colecao InfoBanco de Dados
36/110
TESTE/DB2 EXPRESS
38 < C OL E O I NF O
epois da Microsoft e daOracle, foi a vez da IBMcriar uma verso gratui-ta de seu robusto ban-
co de dados DB2. Como as demaisedies expressas dos concorren-tes, o DB2 Express-C tem limitaes suporta at 4 GB de memriaRAM , mas possui caractersticasque permitem seu uso em aplicaescomerciais e sensveis. Tem a vanta-gem de suportar tanto a plataformaWindows quanto a Linux e roda emmquinas com at dois processado-
res, enquanto as edies expressasdo SQL Server e do Oracle s aceitam
um. Acompanhe a seguir o teste doINFOLAB, realizado num PC Pentium4 de 2,8 MHz, com 512 MB de RAM eWindows 2003 Server Standard.
INSTALAOO processo de instalao do DB2 Ex-press-C rpido, mas fazer o down-load pela web pode ser torturante.O arquivo tem pouco mais de 450MB e, mesmo numa conexo vitami-nada, ir demorar mais de uma ho-ra para baixar. Ler os pr-requisitose as notas nos menus do instalador
evitar problemas durante e aps ainstalao. Por exemplo, um dos pr-
requisitos que naplataforma Windowsse use o Windows XPProfissional.
Durante a instala-o, o prprio sistemacoloca em ao as op-es Java necessrias.Alm disso, permitetestar imediatamente
D
DB2 GRTIS COMTUDO DENTROA VERSO DEGUSTAO DO BANCO DE DADOS DA IBM
VEM REPLETA DE BOAS FERRAMENTASPOR NIVALDO FORESTI
Instalao: o assistenteguia o usurio durantetodo o processo
7/27/2019 8127780 Colecao InfoBanco de Dados
37/110
TESTE/DB2 EXPRESS
C OL E O I NF O> 39
seu funcionamento,criando ou carregan-do os bancos de da-dos de exemplo queo acompanham. Umasrie de caixas de di-logo e janelas de con-firmao indicam oque fazer a cada pas-so da instalao em bom portugus.
A atualizao para verses maisrecentes fica a um clique de distn-cia no prprio instalador. Basta acio-nar Atualizar Verso para o progra-ma verificar qual a verso em usoe executar o upgrade. Acessando oitem Visualizar Introduo, o usu-rio encontra tutoriais e informaesdetalhadas sobre o produto e ou-tros assuntos de interesse, como a
migrao de verses anteriores. Osoutros primeiros passos disponveis criar banco de dados e acessarexemplos abrem aCentral de Controle.
NAS RDEASO Centro de Controle o ponto de partidade todas as opera-es, controles e ad-ministrao das bases de dados cria-das no DB2 Express-C. Como podehaver mais de uma instncia ope-rando na mesma mquina, o Cen-
tro de Controle pode dar conta de
todas elas. um utilitrio bastanterico em funcionalidade para criar emodificar tabelas, executar consul-tas (queries) e anlises complexas,monitorar o status dos bancos dedados, funes de importao e ex-portao de dados, dentre outras.
Os usurios contam com uma in-terface bastante fcil de usar, simi-lar nos sistemas operacionais Win-dows e Linux. Essa estratgia segue
a da concorrente Oracle, que estusando os navegadores para man-ter interfaces semelhantes em to-
das as plataformasque suporta.
Na plataforma Win-dows, a Central deControle pode seraberta a partir do me-nu Iniciar ou clican-do-se com o boto di-
reito no cone do DB2 na bandeja desistema. Uma janela com uma listasimilar do Explorer, contendo ban-co de dados e seus objetos, mos-
trada ao abrir o programa.
Centro de Controle: dconta de todas as
instncias em operao
FIQUE LIGADO
>Fcil de usar e cheiode ferramentas, o DB2
Express-C vai bem naspequenas empresas
7/27/2019 8127780 Colecao InfoBanco de Dados
38/110
TESTE/DB2 EXPRESS
40 < C OL E O I NF O
A quantidade deutilitrios disponveis
no DB2 Express-Cimpressiona. H pro-gramas para moni-toramento de me-mria, de aplicativos,um Centro de Tare-fas em que podemser programadas ta-refas especficas pa-ra execuo em lo-te e a configuraodo sistema. Para fa-cilitar a vida do ad-ministrador ou doprogramador, funes como criar oualterar banco de dados, backup e re-store so controladas por assistentes.
DESEMPENHOConseguir um desempenho timodas aplicaes com banco de dados considerada uma combinao de
magia negra e cincia. Na tentativade se aproximar do timo, o DB2 Ex-press-C oferece ferramentas em sua
maioria grficas, pa-ra assegurar que as
aplicaes no se- jam prejudicadas pe-lo mau uso dos re-cursos. So vrias asferramentas dispo-nveis: db2batch, queverifica o desempe-nho das queries emtempo real; VisualExplain, que analisagraficamente as con-sultas; Design Advi-sor, que sugere a co-locao de ndices
em tabelas para diminuir o tempode acesso baseado nas consultas exe-cutadas, e, finalmente, o Activity Mo-nitor, que gera relatrios do desem-penho dos sistemas para anlise.
DESENVOLVIMENTOO DB2 Express-C inclui os drivers e
a interface necessrios para o de-senvolvimento de aplicaes naslinguagens C/C++, Java e .Net, alm
de PHP e Perl. Su-porta linguagens noservidor para o de-senvolvimento destored procedures,triggers e funes.Elas podem ser es-critas em C/C++, Co-bol, Java (JDBC e
Visual Explain: ferramentaespecial para a anlise grfica dasconsultas ao banco de dados
Desenvolvimento:stored procedures emambiente grfico
7/27/2019 8127780 Colecao InfoBanco de Dados
39/110
7/27/2019 8127780 Colecao InfoBanco de Dados
40/110
O MYSQL GANHAMSCULOSPREFERIDO PELA TURMA DO LINUX, O BANCO
DE DADOS INCORPORA NOVAS FUNES E CORTEJAO MERCADO CORPORATIVOPOR CARLOS MACHADO, COM LUIZ CRUZ
TESTE/MYSQL
42 < C OL E O I NF O
banco de dados de c-digo aberto MySQL te-ve um belo upgrade naverso 5.0, liberada no
final de outubro de 2005. De alter-nativa rpida, eficaz e pouco sofis-ticada para sites simples, o produ-to passou categoria dos robustos.Com suporte a novas funes, co-mo transaes e stored procedures,o banco de dados se prope a ta-refas mais ambiciosas. Essas mu-danas sinalizam que o MySQL es-
t cultivando msculos para enca-rar o mercado corporativo.Produzido pela empresa sueca
MySQL AB, o MySQL tem uma for-ma de licenciamento duplo. Ousurio pode adot-lo como pro-duto gratuito, segundo a licenaGPL, mas tambm tem a opo deadquiri-lo comercialmente, comdireito a suporte e outros benef-cios. Parte fundamental do cha-mado padro LAMP sigla de umconjunto de produtos de cdigoaberto formado por Linux, Apa-che, MySQL, PHP/Perl/Python ,
o MySQL tem hoje uma enorme
base instalada. A MySQL AB come-
morou a marca de mais de 1 mi-lho de downloads nas trs pri-meiras semanas de lanamento daverso 5.0. O nmero sem dvi-da indicativo do grau de interes-se em torno do banco de dados.
MULTIPLATAFORMADesde o incio, o MySQL se des-
tacou pela velocidade, que permi-te seu uso em mquinas de recur-sos relativamente modestos. Isso otransformou no sistema preferidodos sites profissionais pequenos emdios. Tambm contribui para o
sucesso sua disponibilidade em
O
MySQL Administrator: interfacegrfica de gerenciamento
7/27/2019 8127780 Colecao InfoBanco de Dados
41/110
TESTE/MYSQL
C OL E O I NF O> 43
quase todos os siste-mas operacionais
mais importantes. Hverses do MySQLpara Windows, Linux,Unix, Solaris, Mac OSX, FreeBSD, HP-UX,IBM AIX e outros. Htambm verses para plataformasde hardware Intel e AMD, de 32 e64 bits, alm dos chips Sparc, Al-pha, PowerPC etc. INFO analisou averso 5.0.15 do MySQL para Linuxnum servidor Pentium 4 de 3 GHz,rodando a distribuio SUSE 10 de64 bits. Tambm instalamos o ban-co de dados num computador como Windows XP. Nos dois casos, ainstalao no ofereceu nenhumadificuldade especial.
Algumas das funes que es-triam no MySQL 5.0 eram h mui-to tempo reclamadas pelos usu-
rios. A principal de-las o suporte a
transaes. Agora, ogerenciador capazde processar transa-es do tipo ACID,obrigatrias em apli-caes de misso cr-
tica. Uma transao, para os noiniciados, uma operao que sfaz sentido se todos os seus pas-sos forem executados. Um exem-plo clssico a transferncia dedinheiro de uma conta bancriapara outra. H duas tarefas: debi-tar o valor numa conta e credit-lo na outra. Se apenas uma das ta-refas executada, o sistema se tor-na inconsistente. Nos bancos dedados profissionais, o processa-mento de transaes garante a in-tegridade de operaes desse ti-po. Se, por exemplo, o hardware
Controles: uma s interface para controlar usurios, montar rotinas e verificar carga
FIQUE LIGADO
>Muito utilizado emsites simples, o MySQL5.0 j d conta deaplicaes corportivas
7/27/2019 8127780 Colecao InfoBanco de Dados
42/110
TESTE/MYSQL
44 < C OL E O I NF O
falha no meio de uma operao,ela completamente anulada. A
primeira regra do modelo ACID exatamente esta: ou tudo ou na-da. O MySQL 5.0 tambm suportatransaes distribudas, ou seja,transaes complexas envolvendomltiplos bancos de dados locali-zados em diferentes ambientes.
STORED PROCEDURESOutra novidade do MySQL 5.0 soas stored procedures. Uma storedprocedure literalmente: rotinaarmazenada um programa, ouseqncia de comandos, guardadofisicamente no servidor. Uma sriede consultas complexas roda maisrpido como uma stored proced-ure do que uma lista de comandos,executados um a um, a partir deum computador cliente. As proced-ures tambm podem ser dispara-das dentro de uma transao.
Os novos recursos do MySQL j
existem h muito tempo nos gran-des gerenciadores de bancos dedados. A MySQL AB sempre negouque compete com Oracle, IBM eMicrosoft. Mas, ao incorporar osnovos recursos, a empresa d for-tes indicaes de que est de olhono mercado corporativo. Outro si-
nal evidente disso est no MySQLMigration Toolkit, conjunto de fer-ramentas oferecido para incenti-var a migrao dos bancos de da-dos concorrentes para o MySQL.Obviamente, o produto ainda notem cacife, nem tcnico nem co-
MYSQL 5.0FABRICANTE
PR
CONTRA
INSTALAO
RECURSOS
FERRAMENTAS
AVALIAOTCNICA(1)
PREOLICENA
CUSTO/BENEFCIO
ONDE ENCONTRAR
MySQL AB
multiplataforma: temverses para Windows,Linux, Unix
No tem suporte a XML
8,6
Simples, no oferece nenhumadificuldade especial
8,5As novas funesaumentam muito o poderde ao do programa
7,5O MySQL Administratoroferece poucos recursosgrficos
8,3Comparado com o JBoss,foi, em mdia, 3,6 vezesmais rpido no tempo deresposta
GratuitoGPL
www.info.abril.com.br/download/3641.shtml
(1) Mdia ponderada considerando os seguintes itens: Instalao(30%), Recursos (50%), Ferramentas (20%).
mercial, para encarar os gigantesdo setor. Mas, como se diz, est
tentando comer pelas beiradas. Umrecurso importante que o produ-to ainda est devendo aos usurios o suporte a XML.
O fabricante do MySQL tambmoferece o MySQL Administrator, umaferramenta visual para gerenciar ban-cos de dados e usurios. O Adminis-
trator deve ser obtido num download parte. Essa ferramenta permite criare alterar bancos de dados, montarstored procedures e verificar infor-maes de carga do sistema. Embo-ra execute bem as funes a que seprope, ainda no aproveita bem osrecursos da interface grfica.
7/27/2019 8127780 Colecao InfoBanco de Dados
43/110
MISSO CRTICA PARA POSTGRE
TESTE/POSTGRESQL
C OL E O I NF O> 47
elho conhecido das co-munidades de softwarelivre, o PostgreSQL de-morou um pouco mais do
que o MySQL para se popularizar, pro-vavelmente por ser focado em aplica-es crticas. Muitos dos recursos que
o MySQL apresenta na verso 5.0, taiscomo o suporte a gatilhos, stored pro-cedures e transaes, j fazem partedo PostgreSQL h tempos. O impulsoveio com a verso para Windows e acolaborao de empresas como Sun,Fujitsu e Pervasive Software. Com ex-perincia no desenvolvimento e em-pacotamento de verses comerciaisafinadas com as necessidades das cor-poraes, elas estocolocando terno egravata no produto.
O PostgreSQLtambm foi vtima
dos rtulos lento epesado. Pode-se di-zer que o logotipodo produto umelefante azul atreforce essa ima-gem. Mas, debru-ando-se sobre a
verso 8.1, maisrecente, logo sepercebe que is-so no verdade.
A distribuio decdigos binrios do Post-greSQL 8.1 prontos para ins-
talar est disponvel apenas para Li-nux ou Windows. Para outras plata-formas Unix, preciso baixar o cdi-go-fonte e compilar o sistema.
No Linux, o PostgreSQL vem comopacote binrio na maior parte das dis-tribuies, mas para quem gosta deaventura e tem bastante tempo, po-de baixar o cdigo-fonte e compilar.
No ambiente Windows, o progra-
V
PostgreSQL: o pgAdmin faz a administrao do banco
VERSO 8.1 CONTA COM DRIVERS E CAMADAS DESOFTWARE QUE GARANTEM SUA CONECTIVIDADE
POR HELIO SILVA
7/27/2019 8127780 Colecao InfoBanco de Dados
44/110
TESTE/POSTGRESQL
48 < C OL E O I NF O
ma pode ser instalado de duas for-mas: utilizando o ambiente Cygwin,
que permite, com certas restries,utilizar os programas escritos paraLinux, ou diretamente no WindowsXP. O Cygwin mais indicado paraquem tem experincia no uso doPostgreSQL em ambiente Linux. Ja verso pronta para o Windows muito robusta, fcil e no decepcio-na. A instalao no Windows podeser feita em portugus, mas, no fi-nal, o software de administraopgAdmin se apresentar em ingls.
RECURSOSO PostgreSQL 8.1 chega bem abaste-cido de drivers e camadas de soft-ware que garantemsua conectividade comferramentas de criaoe extrao de relat-rios alm, claro, de li-g-lo com as lingua-
gens de programaopopulares como Java,Visual Basic e Delphi. A plataforma.Net da Microsoft tambm no fica defora, contando com o data providerNpgSQL. natural que o banco man-tenha conexes privilegiadas com seuspares do software livre, como as lin-guagens Phyton, Perl, TCL e PHP.
Se para escrever programas defront-end existem tantas opes, omesmo pode se dizer das linguagensdisponveis para desenvolver funese processos que rodam dentro dobanco. As opes so: PL/Perl,
PL/TCL, PL/Java e o PL/pgSQL do
prprio PostgreSQL, que equivale aoPL/SQL da Oracle. Essa diversidade
facilita a vida de quem j versadoem uma dessas linguagens.
Alm do pacote bsico, sem-pre bom dar uma checada em si-tes que mantm projetos ligadosao PostgreSQL. Um deles o sitepgfoundry.org , onde podem serencontrados utilitrios e at mes-mo sistemas completos.
Uma ausncia sentida o suportenativo ao XML. Em aplicaes comtrocas de dados entre sistemas hete-rogneos, como em operaes detransmisso eletrnica de pedidos efaturas entre empresas ou intercm-bio de dados bancrios, de se es-
perar que existam di-ferentes bancos atuan-do do outro lado, e omercado aponta parao XML como melhorforma de garantir es-
sa conversa. Quemaderir ao PostgreSQLter de escrever suas interfaces XML.
BOA HERANAUm velho dilema da crescente co-munidade de programadores quetrabalham com a abordagem daorientao a objeto (OOP) que elesraciocinam e projetam seus sistemaspensando em objetos e, no entanto,tm de lidar com bancos de dadosrelacionais na hora de depositar seusdados. Eles gostariam de ter bancosde dados que entendessem um pou-
co mais sua abordagem. O Post-
FIQUE LIGADO
>Recursos poderososindicam o PostgreSQLpara as aplicaes demisso crtica
7/27/2019 8127780 Colecao InfoBanco de Dados
45/110
TESTE/POSTGRESQL
C OL E O I NF O> 49
POSTGRESQL 8.1FABRICANTE
PRS
CONTRAS
INSTALAO
GERENCIAMENTO
FERRAMENTAS
DESENVOLVIMENTO
SEGURANA
AVALIAOTCNICA(1)
PREOLICENA
CUSTO/BENEFCIO
ONDE ENCONTRAR
PostgreSQL GlobalDevelopment Group
Inclui replicao de dados,processamento paralelo,suporte a 64 bits e aclusters
Falta de suporte nativo aopadro XML
7,0Fcil e rpida com pacotesbinrios e instalador emportugus
8,5O pgAdmin III d acesso atodos os recursos dobanco, mas est s emingls
8,5Conta com ferramentas degeoprocessamento,administrao, tunning edatawarehouse na web
8,0Pode ser feito em Java,Perl, PHP, TCL, C, C++ equalquer linguagem comconectores de acessocomo o .Net
8,5Dispe de criptografiapara protegerarmazenamento, trfego,atributos e autenticao
8,3
GratuitoBSD
www.info.abril.com.br/download/4119.shtml
(1) Mdia ponderada considerando os seguintes itens e respectivos pesos:Instalao (10%), Gerenciamento (35%), Ferramentas (35%),Desenvolvimento (10%) e Segurana dos dados (10%).
greSQL faz um pequeno esforo nes-se sentido, implementando uma das
propriedades da orientao a obje-to que a herana.
Para compreender a aplicao daherana em um banco de dados, ima-gine o desenvolvimento de um sis-tema para uma loja de barcos. A pri-meira providncia criar a tabelaBarcos com todas as caractersticascomuns a qualquer barco (cdigo,preo, descrio etc.). Em seguida,cria-se uma tabela filha que trata es-pecificamente de veleiros e que her-da as caractersticas de Barcos, acres-centando-se os atributos especficosde um veleiro como a altura do mas-tro e o tipo de vela. Por fim, cria-seuma tabela Lanchas, que tambm filha de Barcos, adicionando-se a elaatributos como potncia do motor.Alteraes em Barcos, como a cria-o do atributo Preo Promocional,por exemplo, automaticamente se
refletem em Veleiros e Lanchas.
SINCRONIZAOUsando-se um dos seus diversos sis-temas de replicao, o PostgreSQLpode ser aplicado em empresas depequeno e mdio porte que tm ne-cessidade de sincronizao de dadosentre matriz e filiais.
Alm da sincronizao, o bancode dados tem evoludo em recursospara resistir a falhas e operar commltiplos processadores, o que otorna uma boa opo para os pro- jetos de misso crtica. Possui tam-
bm a habilidade de lidar com enor-
mes bases com respostas em tempoaceitvel, requisito bsico para siste-
mas de datawarehouse, cujos bancosde dados podem chegar facilmenteaos terabytes. Esse tipo de sistemaest na ordem do dia das empresasgraas reduo dos custos de pro-cessamento e armazenamento, alm, claro, da necessidade constante debuscar competitividade.
7/27/2019 8127780 Colecao InfoBanco de Dados
46/110
FIREBIRD POUPAA MQUINAA VERSO 1.5.3 TEM RECURSOS PODEROSOS E DISPENSA
EQUIPES DE MANUTENOPOR HELIO SILVA
TESTE/FIREBIRD
50 < C OL E O I NF O
banco de dados Firebirdest cada vez melhor,acompanhando os avan-os dos concorrentes de
cdigo aberto MySQL e PostgreSQL.Nascido de uma iniciativa da Borlandde abrir o cdigo do seu banco In-terbase 6, o Firebird chegou ver-so 1.5.3 bem mudado, graas ao tra-balho do IBPhoenix. Esse grupo dedesenvolvedores j estabilizou a tra-duo do cdigo da linguagem C pa-ra a C++, o que deve permitir ao pro-
duto alar vos mais altos entre asrie de verses 1.5.x e a 2.0.
No teste do INFOLAB, utilizamos oFirebird 1.5.3 Classic Server, a versoestvel mais recente, rodando numPC com processador Pentium HT de1,3 GHz e 512 MB de memria RAM.
INSTALAOA instalao fcil, mas no atuali-za as outras verses previamenteinstaladas. Ao contrrio, pede a re-moo de antigas edies de Inter-
O
EMS SQL Manager:interface grfica elegante para Firebird com jeito de Windows XP
7/27/2019 8127780 Colecao InfoBanco de Dados
47/110
TESTE/FIREBIRD
C OL E O I NF O> 51
base ou Firebird. Aofinal do processodescobre-se que fo-ram criados algunstextos dos manuaisem arquivos texto ePDF e apenas umprograma baseadono velho prompt de comando. Issoporque o pacote bsico no trazuma interface grfica que facilite aadministrao do banco. Existe umprojeto de interface grfica de c-
digo aberto chamado FlameRobin(www.flamerobin.org ), que no fu-turo deve fazer parte do pacote,mas seu desenvolvimento ainda es-t em estgio inicial.
INTERFACESDe qualquer forma, o usurio no fi-ca desprovido de interface de geren-ciamento. Pode escolher uma entreas diversas disponveis no site do IB-Phoenix (www.ibphoenix.com ).A maior parte delas sharewarecom verses livres sem algumasfuncionalidades.
No teste do INFOLAB, utilizamostrs interfaces de ge-renciamento: a DB-Manager (www.info.abril.com.br/down-load/3682.shtml ), daDBTools, a IBExpert(www.info.abril.com.
IBExpert: traz recursosarrojados, como anlisede performance
br/download/4047.shtml ), da H-Ksoftware, e a EMS SQL Manager(www.info.abril.com.br/down-load/4453.shtml ), da EMS DatabaseManagement Solutions.
O gerenciador EMS SQL Managerempresta ao Firebird uma interfa-ce elegante e funcional, com apa-rncia bem prxima do WindowsXP, usando o mesmo tipo de co-nes. Na verso gratuita, ele j pro-v todos os recursos necessrios administrao. J o brasileiro DBMa-nager tem como vantagem o su-porte em portugus.
Se a inteno for adquirir umaferramenta para ir alm das ativi-dades normais de administrao,ento vale a pena dar uma boa olha-da no IBExpert em sua verso co-
mercial que, alm da interface maiscompleta para admi-nistrao, conta comrecursos arrojadoscomo anlise de per-formance e at pes-quisas OLAP. Relem-brando, por meio do
FIQUE LIGADO
>Feito para aplicaesde mdio porte, o Fire-bird oferece baixo cus-to de manuteno
7/27/2019 8127780 Colecao InfoBanco de Dados
48/110
TESTE/FIREBIRD
52 < C OL E O I NF O
OLAP podem ser criadas vises mul-tidimensionais do banco j agrega-
das, os famosos cubos. Esse tipo deviso facilita o desmembramento ea comparao de uma informaomensurvel, como o faturamento,por exemplo. Com um cubo de fa-turamento fica fcil estabelecer asvendas por tipo de produto, por ti-po de consumidor e por regio deforma fcil e rpida.
DRIVERSOutra providncia necessria aps
a instalao cuidar da interope-rabilidade com linguagens, gerado-res de relatrio e outros bancos dedados. O site do IBPhoenix ajuda,indicando drivers ODBC e camadasde conectividade com Java e .NET.Nem todos so gratuitos e, mesmoos livres, requerem anlise do tipode licena de uso.
RECURSOSO esforo de instalao e implanta-o vale a pena. A exemplo do In-terbase, o Firebird d conta de apli-caes de mdio porte. Seu dife-rencial rodar em plataformas Win-dows e em muitos sabores de Unix,alm de contar com recursos im-portantes, como suporte a transa-es, gatilhos e stored proceduresdesde sua primeira verso, enquan-to o MySQL s trouxe esses recur-
sos na 5.0, a mais recente.O sistema de transaes do Fire-bird robusto e admite os aninha-mentos (nested transactions), quepermitem a aplicao de novas re-gras quando uma transao encon-tra um erro em um determinadoponto de seu processamento, dan-do alternativas concluso da tran-sao sem que se torne necessriodesfazer toda a operao. As tran-saes aninhadas permitem a apli-cao de regras complexas de ne-gcio dentro do banco, eliminandoa programao na interface.
A transferncia de lgica de ne-
FIREBIRD 1.5.3CLASSIC SERVERFABRICANTE
PRS
CONTRA
INSTALAO
GERENCIAMENTO
FERRAMENTAS
DESENVOLVIMENTO
SEGURANA
AVALIAOTCNICA(1)
PREOLICENA
CUSTO/BENEFCIO
ONDE ENCONTRAR
FirebirdSQL Foundation
Conta com recursospoderosos, como views,
transaes concorrentese gatilhos
Depende de aplicativos deterceiros para aadministrao
6,5Bem traduzida, mas comlongas explicaes queprecisam ser lidas
6,5No tem interface grficade administrao,
exigindo ferramentasauxiliares
8,5Ferramentas CASE, deadministrao e at OLAPpodem ser encontradasna web
8,0Muito bom para Delphi,com abertura para PHP,Perl, Java e .NET.
6,5No tem criptografia
7,4
GratuitoIPL
www.info.abril.com.br/download/2108.
(1) Mdia ponderada considerando os seguintes itens e respectivospesos: Instalao (10%), Gerenciamento (35%), Ferramentas (35%),Desenvolvimento (10%) e Segurana dos dados (10%).
7/27/2019 8127780 Colecao InfoBanco de Dados
49/110
TESTE/FIREBIRD
C OL E O I NF O> 53
gcio para o banco de dados flexi-biliza as opes de escolha de lin-guagens e ambientes de programa-o para interfacear com o banco,uma vez que simplifica a quantida-de de regras que devem estar pre-
sentes no cdigo. Esse aspecto importante num mundo em que obanco tem de atender um servidorweb, uma aplicao .Net e outraslinguagens, mantendo sempre acoerncia dos dados que lhe so in-seridos ou requisitados.
Outro ponto forte do Firebird sua manuteno facilitada, pratica-mente dispensando a presena deum DBA dedicado a atividades deajustes de desempenho do bancoe controle de crescimento da base.A atividade de manuteno se re-sume ao backup e, eventualmente,
uma recuperao de dados. Bancos
mais sofisticados como PostgreSQL,MS SQL Server, Oracle e DB2 entreoutros demandam ajustes especia-lizados durante seu ciclo de implan-tao, crescimento e produo.
O baixo custo de manuteno tor-
na o Firebird uma boa opo paraempresas que no podem contarcom uma equipe especializada pa-ra dar suporte a suas aplicaes. Aportabilidade do banco de dadosentre mltiplas plataformas o tornatambm indicado para aplicaesque operam com atualizaes debases off line e que tenham neces-sidade de integrao centralizada.
Quem pretende adotar o Fire-bird no Brasil, pode contar com oapoio de uma comunidade forte ecolaborativa, que pode ser conta-tada pelo portal Firebase ( www.
firebase.com.br ).
DBManager: produzida no Brasil, a interface d suporte ao Firebird em portugus
7/27/2019 8127780 Colecao InfoBanco de Dados
50/110
TESTE/ACCESS
54 < C OL E O I NF O
O ACCESS ENTRAEM REFORMAUMA MUDANA DRSTICA NA INTERFACE COM O USURIO
A PRINCIPAL NOVIDADE DO OFFICE 12, DA MICROSOFTPOR PAULO SILVESTRE
interface baseada emmenus j to familiaraos usurios do Windowsque pode parecer teme-
rrio substitu-la por outra. Mas is-so que a Microsoft est fazendo como banco de dados Access e os demaisintegrantes do Office, seu pacote deaplicativos para escritrio. O Office 12,nova verso com lanamento previs-
to para o fim de 2006, leva adianteuma tendncia que j havia se esbo-ado nos betas do Windows Vista. Noprimeiro beta do Office 12, analisadopelo INFOLAB, os menus desparece-ram e deram lugar a uma interfacecom o usurio radicalmente diferen-te. A promessa que, com isso, o soft-ware ficar mais fcil de usar. A ava-liao do INFOLAB que a nova in-
A
Access 12: a interface substitui os vrios menus por um menu horizontal no alto
7/27/2019 8127780 Colecao InfoBanco de Dados
51/110
TESTE/ACCESS
C OL E O I NF O> 55
terface realmente mais prtica. Comela, ser possvel realizar mais tare-
fas com menos cliques na tela. Masos usurios vo estranhar bastante.
FIM DOS MENUSO beta 1 do novo Office (o nome Of-fice 12 no definitivo) traz os apli-cativ