• Save
A Camada de Abstração do Sistema de Gerenciamento de Banco de Dados do Sistema Odontológico da UNIOESTE
Upcoming SlideShare
Loading in...5
×
 

A Camada de Abstração do Sistema de Gerenciamento de Banco de Dados do Sistema Odontológico da UNIOESTE

on

  • 4,551 views

Conteúdo apresentado no V CONGED - Congresso de Tecnologias para Gestão de Dados e Metadados do Cone Sul, 2007. Aborda o tema abstração de SGBDs através de frameworks, com ênfase na biblioteca ...

Conteúdo apresentado no V CONGED - Congresso de Tecnologias para Gestão de Dados e Metadados do Cone Sul, 2007. Aborda o tema abstração de SGBDs através de frameworks, com ênfase na biblioteca ADOdb, utilizada no projeto SISO.

Statistics

Views

Total Views
4,551
Views on SlideShare
4,548
Embed Views
3

Actions

Likes
1
Downloads
0
Comments
0

1 Embed 3

http://www.slideshare.net 3

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

A Camada de Abstração do Sistema de Gerenciamento de Banco de Dados do Sistema Odontológico da UNIOESTE A Camada de Abstração do Sistema de Gerenciamento de Banco de Dados do Sistema Odontológico da UNIOESTE Presentation Transcript

  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento ADOdb A Camada de Abstra¸˜o do Sistema de ca Gerenciamento de Banco de Dados do Sistema Odontol´gico da UNIOESTE o Anderson Zanardo Dias1 1 Universidade Estadual do Oeste do Paran´ a CONGED - Congresso de Tecnologias para Gest˜o de Dados e a Metadados do Cone Sul, 2007 Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento Participantes do projeto SISO ´ Anderson Zanardo Dias1 , Anselmo Luiz Eden Battisti1 , Rafael 1 , Claudia Brandelero Rizzi1 , Jorge Bidarra1 , Fabiana Voltolini Scarparo Nalfel2 , Mariˆngela Monteiro de Melo Baltazar2 , Marina a Berti2 , Alexandre Almeida Webber2 1 N´cleo u de Inova¸˜es Tecnol´gicas (NIT) co o 2 Centro de Ciˆncias Biol´gicas e da Sa´de (CCBS) e o u Universidade Estadual do Oeste do Paran´ a Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento O que ´ o SISO e Acrˆnimo para Sistema Odontol´gico o o Atualmente todos os controles das cl´ ınicas s˜o feitos a manualmente Parceria entre CCBS (Centro de Ciˆncias Biol´gicas e da e o Sa´de) e NIT (N´cleo de Inova¸˜es Tecnol´gicas), resultando u u co o no projeto SISO Sistema Web para controle da Cl´ ınica Odontol´gica da o UNIOESTE Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento Abstra¸˜o de Sistema Gerenciador de Banco de Dados ca SQL (Structured Query Language) criada originalmente pela IBM (International Business Machines) Rapidamente surgiram varia¸˜es desenvolvidas por outros co produtores Essa expans˜o levou ` necessidade de ser criado e adaptado a a um padr˜o para a linguagem a Tarefa realizada pela ANSI (American National Standards Institute) em 1986 e ISO (International Organization for Standardization) em 1987 Apesar dos padr˜es sugeridos pela ANSI, poucos s˜o os o a SGBDs que apresentam portabilidade total entre si Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento Abstra¸˜o de Sistema Gerenciador de Banco de Dados ca Existem diversas raz˜es para que isto aconte¸a: o c O padr˜o ANSI ´ muito extenso e por isto muitas vezes n˜o ´ a e ae completamente implementado O padr˜o deixa a crit´rio dos desenvolvedores decis˜es a e o importantes sobre pontos cr´ıticos como, por exemplo, ´ ındices Grandes sistemas possuem bases de dados consolidadas e a ado¸˜o do padr˜o sugerido pela ANSI pode causar ca a incompatibilidade O padr˜o ANSI pode ir contra a filosofia de desenvolvimento a da organiza¸˜o ca N˜o ´ imposs´ que um dia o SGBD que est´ sendo utilizado ae ıvel a se torne inapropriado e a aplica¸˜o tenha que ser reescrita ca para utilizar outro SGBD Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento Abstra¸˜o de Sistema Gerenciador de Banco de Dados ca As fun¸˜es em PHP (Hypertext Preprocessor ) restringem seu co uso a determinados bancos de dados, como por exemplo, as fun¸˜es mysql connect() e mssql select db() co Uma mudan¸a de SBGD faria com que o c´digo escrito c o tivesse todas as suas fun¸˜es de manipula¸˜o de banco de co ca dados alteradas, inclusive as sintaxes Neste sentido, as bibliotecas fazem a diferen¸a c Bibliotecas para abstra¸˜o de SGBD s˜o chamadas de ca a Database Abstraction Layer Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento Incompatibilidades SQL O comando SELECT est´ em um bom grau de padroniza¸˜o a ca Quase todos os SGBDs suportam o seguinte SELECT [colunas] FROM [tabelas] [WHERE condi¸~es] co [GROUP BY colunas] [HAVING condi¸~es] co [ORDER BY colunas] Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento Incompatibilidades SQL Onde h´ incompatibilidade? a SQL para retornar os 10 primeiros registros pode ser escrita como: SGBD Sintaxe SQL DB2 SELECT * FROM tabela FETCH FIRST 10 ROWS ONLY Informix SELECT FIRST 10 * FROM tabela Microsoft SQL Server e Access SELECT TOP 10 * FROM tabela MySQL e PostgreSQL SELECT * FROM tabela LIMIT 10 Oracle 8i SELECT * FROM (SELECT * FROM tabela) WHERE ROWNUM <= 10 Na se¸˜o ADOdb ser´ mostrada a solu¸˜o para este problema ca a ca Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca O que ´ ADOdb e Acrˆnimo para Active Data Objects Data Base o Conjunto de bibliotecas/classes que padronizam as fun¸˜es de co banco de dados do PHP A inten¸˜o prim´ria ´ ocultar as diferen¸as que h´ entre os ca ae c a bancos de dados e prover um m´todo simples de fazer e consultas e manipula¸˜es nas bases de dados suportadas por co este framework com o m´ ınimo de altera¸˜o no c´digo ca o Provˆ suporte para c´digos de inser¸˜o e atualiza¸˜o que e o ca ca podem ser adaptados a m´ltiplos bancos de dados u rapidamente Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca Como surgiu a ADOdb Baseada na Microsoft ADO (ActiveX Data Objects) que foi popular desde vers˜es mais antigas do Visual Basic o A sintaxe da ADO inspirou a cria¸˜o de outras bibliotecas ca ADOdb utiliza o mesmo conceito da ADO para o mundo PHP e Python Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca Download e Instala¸˜o da ADOdb ca Acessar diretamente a p´gina da biblioteca em a http://sourceforge.net/projects/adodb/ Ap´s feito o download, descompacte o arquivo o O pr´ximo passo ´ configurar o PHP o e php.ini .htaccess no DOCUMENT ROOT ini set() include(), include once(), require(), require once() Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca Download e Instala¸˜o da ADOdb ca ´ E recomend´vel que se crie um diret´rio de cache para a a o ADOdb Este diret´rio ser´ onde a ADOdb ir´ armazenar as consultas o a a que foram encontradas para reuso sem ter que fazer uma nova consulta a base de dados Este diret´rio tem que ter permiss˜o de leitura e escrita, ou o a CHMOD 777 Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca SGBDs suportados MySQL Oracle Microsoft SQLServer Sybase Sybase SQL Anywhere Informix PostgreSQL FrontBase SQLite Interbase (Firebird e variantes Borland) FoxPro Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca SGBDs suportados Access ADO DB2 SAP DB ODBC Pessoas ao redor do mundo contribuem com drivers para suporte a outros SGBDs Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca Caracter´ ısticas Vari´veis pr´-definidas a e Comandos de conex˜o a Fun¸˜es de cache co Fun¸˜es de erros co Fun¸˜es de execu¸˜o (query) co ca Fun¸˜es de execu¸˜o em cache (cache query) co ca A ADOdb reduz drasticamente a carga de um servidor de banco de dados. Usando cache pode-se conseguir uma melhor performance e tempos de carregamento mais r´pidos, a reduzindo a quantidade de consultas que s˜o feitas a diretamente no SGBD Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca Inicializando a Classe ADOdb <?php 1. require(quot;adodb.inc.phpquot;); 2. $ADODB_CACHE_DIR = quot;/var/www/adodbcachequot;; 3. $db = ADONewConnection(quot;mysqlquot;); 4. $db->Connect(quot;localhostquot;, quot;usernamequot;, quot;passwordquot;, quot;databasequot;); ?> Essas fun¸˜es correspondem ao mysql connect() e co mysql select db() que s˜o normalmente usadas em PHP a MySQL N˜o se pode usar fun¸˜es MySQL em conjunto com ADOdb a co porque n˜o h´ referˆncia a um identificador de conex˜o criado aa e a por mysql connect() ou mysql pconnect() Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca PHP MySQL 1. $qTabela = mysql_query(quot;SELECT * FROM tabela WHERE campo = ’padrao’quot;); 2. $rTabela = mysql_fetch_row($qTabela); 3. var_dump($rTabela); Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca ADOdb 1. $rTabela = $db->GetRow(quot;SELECT * FROM tabela WHERE campo = ’padrao’quot;); 1. var_dump($rTabela); Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ ADOdb e O que ´ o SISO e Como surgiu a ADOdb Abstra¸˜o de SGBD ca Download e Instala¸˜o da ADOdb ca Incompatibilidades SQL SGBDs suportados ADOdb Caracter´ ısticas Mais sobre ADOdb Inicializando a Classe ADOdb Outras Bibliotecas Selecionando uma linha com PHP MySQL e ADOdb Encerramento Resolvendo o problema da sele¸˜o por limite ca Resolvendo o problema da sele¸˜o por limite ca Como visto em Incompatibilidades SQL, a sintaxe do comando SELECT para limite de registros n˜o ´ a mesma em todos os ae SGBDs. Este problema pode ser resolvido com a ADOdb A fun¸˜o SelectLimit() permite que se oculte os detalhes da ca implementa¸˜o, reescrevendo a SQL para o SGBD ca configurado na biblioteca ADOdb $db->SelectLimit(quot;SELECT * FROM tablequot;, 10); Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Quem utiliza ADOdb Gerenciadores de conte´do u PostNuke Xaraya Mambo Solu¸˜es de Groupware co eGroupWare Uma lista completa pode ser encontrada em http://phplens.com/phpeverywhere/adodb-cool-apps Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Porque ADOdb? Padr˜es do mercado ou m´tricas de performance s˜o o e a importantes, mas a escolha de uma ferramenta deve ser de acordo com sua vontade e motiva¸˜o em utiliz´-la ca a 37signals 1 cita que ”Seu time precisa trabalhar com as ferramentas que eles amam” 1´ E uma pequena equipe que cria software simples e focado. Criou produtos como Basecamp, Ta-da List, Writeboard, Backpack, onde David Heinemeir-Hansson trabalha e de onde saiu Ruby on Rails. David ´ o criador e do Rails. Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Como funciona Escolha do SGBD Cria¸˜o de um objeto atrav´s da classe dispon´ ca e ıvel Acesso aos m´todos respons´veis pela manipula¸˜o dos dados e a ca Tais m´todos substituem a sintaxe padr˜o de consulta, como e a o mysql query () no PHP, pr´pria para MySQL, por sintaxes o espec´ ıficas da biblioteca Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Sem Abstra¸˜o ca Figura: Aplica¸˜o manipulando o SGBD sem uso de abstra¸˜o ca ca Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Com Abstra¸˜o ca Figura: Aplica¸˜o manipulando o SGBD com uso de abstra¸˜o ca ca Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Suporta DDL (Data Definition Language) Comandos como CREATE, ALTER e DROP DML (Data Manipulation Language) Consultas, inser¸˜es, exclus˜es e altera¸˜es co o co Comandos como SELECT, INSERT, UPDATE e DELETE DQL (Data Query Language) Conseq¨ˆncia da DML ue Comando SELECT Transactions Prepared Statements Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Quando utilizar abstra¸˜o de SGBD ca Crescente disponibilidade de ferramentas e vantagens financeiras decorrentes do uso de Software Livre Abstra¸˜o n˜o ´ uma necessidade absoluta ca a e Tem como conseq¨ˆncia natural a degrada¸˜o do desempenho ue ca Torna o processo mais lento e custoso para o servidor do que nativamente Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Quando utilizar abstra¸˜o de SGBD ca Pontos a serem avaliados Importˆncia do desempenho do sistema a Portabilidade e conhecimento unico aplic´vel a um grande ´ a leque de SGBDs No primeiro caso, acesso direto e preocupa¸˜o com os ca m´ınimos detalhes da API (Application Programming Interface) nativa do SGBD se tornam mais eficientes No segundo caso vale a pena investir em abstra¸˜o ca Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Teste de desempenho Tabela com 542 registros em um SGBD PostgreSQL Listar nomes em ordem alfab´tica e 250 itera¸˜es co Com impress˜o e sem impress˜o do resultado a a M´quina utilizada a AMD Sempron 64 2800 512Mb RAM SO Linux Slackware 10.2 PHP 5.1.6 Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento C´digo para teste o <?php 1. $tempoInicio = microtime(true); 2. require_once(quot;conecta.phpquot;); 3. $iteracao = 250; 4. for($i = 0; $i < $iteracao; $i++) 5. { 6. $cBase = quot;SELECT nome FROM tabela ORDER BY nomequot;; 7. $qBase = pg_query($cBase); 8. while($rBase = pg_fetch_row($qBase)) 9. { 10. echo $rBase[0]; 11. } 12. } 13. $tempoFim = microtime(true); 14. $tempoTotal = $tempoFim - $tempoInicio; 15. echo quot;Tempo: quot;.$tempoTotal; ?> Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Quem utiliza ADOdb Abstra¸˜o de SGBD ca Porque ADOdb? Incompatibilidades SQL Como funciona ADOdb Suporta Mais sobre ADOdb Quando utilizar abstra¸˜o de SGBD ca Outras Bibliotecas Teste de desempenho Encerramento Resultados Acesso Sem impress˜o (s) a Com impress˜o (s) a Sem impress˜o (%) a Com impress˜o (%) a PDO 0,911638021469 1,94957995415 -0,89% -17,84% PostgreSQL 0,919865846634 2,37295603752 0,00% 0,00% Creole SPL 1,5732011795 4,29205203056 71,03% 80,07% DBX 1,95202517509 4,8769800663 112,21% 105,52% Metabase 2,30786895752 5,63655900955 150,89% 137,53% ADOdb 2,23551392555 6,11938786507 143,03% 157,88% Creole JDBC 1,72740602493 7,62089395523 87,79% 221,16% DB 3,48861908913 9,4957420826 279,25% 300,17% MDB2 4,25926303864 11,3491249084 363,03% 378,27% Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL ADOdb Mais sobre ADOdb Outras Bibliotecas Encerramento Outras Bibliotecas PDO Creole SPL DBX Metabase Creole JDBC DB MDB2 Entre outras Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL Sobre o Apresentador ADOdb Referˆncias Bibliogr´ficas e a Mais sobre ADOdb Outras Bibliotecas Encerramento Sobre o Apresentador Anderson Zanardo Dias Acadˆmico do Curso de Bacharelado em Inform´tica e a UNIOESTE Campus de Cascavel anderzd@gmail.com Esta apresenta¸˜o est´ dispon´ na Internet no endere¸o ca a ıvel c www.slideshare.net/anderzd Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL Sobre o Apresentador ADOdb Referˆncias Bibliogr´ficas e a Mais sobre ADOdb Outras Bibliotecas Encerramento Referˆncias Bibliogr´ficas e a PDO. Dispon´ em: http://www.php.net/pdo ıvel Creole. Dispon´ em: http://creole.phpdb.org/trac/ ıvel DBX. Dispon´ em: http://www.php.net/manual/pt BR/ref.dbx.php ıvel Metabase. Dispon´ em: http://www.phpclasses.org/browse/package/20.html ıvel Pear DB. Dispon´ em: http://pear.php.net/ ıvel MDB2. Dispon´ em: http://pear.php.net/package/MDB2 ıvel eGroupWare. Dispon´ em: http://www.egroupware.org/ ıvel ADOdb. Dispon´ em: http://phplens.com/lens/adodb/docs-adodb.htm ıvel Mambo. Dispon´ em: http://www.mamboserver.com/ ıvel PostNuke. Dispon´ em: http://www.postnuke.com/ ıvel Xaraya. Dispon´ em: http://www.xaraya.com/ ıvel Basecamp. Dispon´ em: http://www.basecamphq.com/ ıvel Ta-da Lists. Dispon´ em: http://www.tadalist.com/ ıvel Writeboard. Dispon´ em: http://www.writeboard.com/ ıvel Backpack. Dispon´ em: http://www.backpackit.com/ ıvel SourceForge. Dispon´ em: http://sourceforge.net/ ıvel Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca
  • Participantes O que ´ o SISO e Abstra¸˜o de SGBD ca Incompatibilidades SQL Sobre o Apresentador ADOdb Referˆncias Bibliogr´ficas e a Mais sobre ADOdb Outras Bibliotecas Encerramento Referˆncias Bibliogr´ficas e a PEAR - PHP Extension and Application Repository. Dispon´ em: http://pear.php.net/ ıvel Espa¸o do Office: Dicas para a cria¸˜o de scripts em aplicativos do Microsoft Office. Dispon´ em: c ca ıvel http://www.microsoft.com/brasil/technet/Colunas/scriptcenter/resources/officetips/nov05/tips1103.mspx Abstra¸˜o de SGBDs - Estudo comparativo. Dispon´ em: ca ıvel http://joseberardo.blogspot.com/2006/11/abstrao-de-sgbds-estudo-comparativo.html Comparing ADODB with PEAR DB, MDB, dbx, Metabase and Native MySQL. Dispon´ em: ıvel http://phplens.com/lens/adodb/ ADOdb and PEAR DB compared. Dispon´ em: http://phplens.com/phpeverywhere/node/view/39 ıvel ADOdb Library for PHP. Dispon´ em: http://phplens.com/lens/adodb/docs-adodb.htm ıvel ADOdb: Making MySQL Efficient. Dispon´ em: http://www.phpfreaks.com/tutorials/110/0.php ıvel PHP Database Functions vs. PEAR::DB vs. ADOdb (and PDO). Dispon´ em: ıvel http://joseph.randomnetworks.com/archives/2006/04/04/php-database-functions-vs-peardb-vs-adodb/ An introduction to the ADOdb class library for PHP. Dispon´ em: ıvel http://www.databasejournal.com/features/php/article.php/2234861 Tips on Writing Portable SQL. Dispon´ em: http://phplens.com/lens/adodb/tips portable sql.htm ıvel Python. Dispon´ em: http://www.python.org/ ıvel PHP. Dispon´ em: http://www.php.net/ ıvel Anderson Zanardo Dias ADOdb - Abstra¸˜o de SGBD ca