Usando o Zend_Db para conectar no MySql
O Zend_Db é suas classes relacionadas fornecem uma interface simples para conexão com banco de dados.
/* A classe Zend_Db sozinha não conecta com o banco, ela apenas faz uma ponte mais fácil para criar estas conexões. Você precisará que a biblioteca de conexão com o banco que escolher esteja habilitado. */
Vou demonstrar aqui a conexão com banco de dados MySql, e para isso é necessário que a biblioteca MySqli
esteja habilitada.
Primeiro vamos criar a tabela na nossa base de dados:
Banco de dados zendbrasil:
CREATE TABLE `teste` (
`USUARIO_ID` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`USUARIO_NOME` VARCHAR( 120 ) NOT NULL
) ENGINE = MYISAM;
E vamos inserir alguns dados:
INSERT INTO `teste` (
`USUARIO_ID` ,
`USUARIO_NOME`
)
VALUES ( NULL , 'Usuario 1' ),
( NULL , 'Usuario 2' ),
( NULL , 'Usuario 3' ),
( NULL , 'Usuario 4' );
Agora que temos a tabela e temos 4 valores, vamos conectar mais primeiro vamos configurar a conexão:
require_once 'Zend/Config.php';
require_once 'Zend/Db.php';
$config = new Zend_Config(
array(
'database' => array(
'adapter' => 'Mysqli', // Adaptador
'params' => array(
'host' => 'localhost', // Host de conexão
'dbname' => 'zendbrasil', // Base de dados
'username' => 'livro', // Login
'password' => '', // Senha
)
)
)
);
$db = Zend_Db::factory($config->database);
Para conexão há diversas opções, veja bem se a estensão esta ativada antes de esolhe-la. Para mais detalhes veja quais estão disponíveis na Zend/Db/.
Agora que temos a conexão esta configurada vamos a uma pequena conexão usando o método fetchAll:
$sql = "SELECT * FROM `teste` "; $result = $db->fetchAll($sql); echo '<pre>'; print_r($result);
A resposta é um array iniciada de zero contendo todos os itens de cada linha da tabela.
A resposta apresentada pelo print_r é apresentada abaixo:
Array
(
[0] => Array
(
[USUARIO_ID] => 1
[USUARIO_NOME] => Usuario 1
)
[1] => Array
(
[USUARIO_ID] => 2
[USUARIO_NOME] => Usuario 2
)
[2] => Array
(
[USUARIO_ID] => 3
[USUARIO_NOME] => Usuario 3
)
[3] => Array
(
[USUARIO_ID] => 4
[USUARIO_NOME] => Usuario 4
)
)
Já usando o método fetchAssoc temos um array ao qual o índice é formado pela chave primária da tabela.
$sql = "SELECT * FROM `teste` ORDER BY `USUARIO_ID` DESC "; $result = $db->fetchAssoc($sql); echo '<pre>'; print_r($result);
Veja a resposta:
Array
(
[4] => Array
(
[USUARIO_ID] => 4
[USUARIO_NOME] => Usuario 4
)
[3] => Array
(
[USUARIO_ID] => 3
[USUARIO_NOME] => Usuario 3
)
[2] => Array
(
[USUARIO_ID] => 2
[USUARIO_NOME] => Usuario 2
)
[1] => Array
(
[USUARIO_ID] => 1
[USUARIO_NOME] => Usuario 1
)
)
Em próximos post irei comentar sobre inserir e outros.












