Página Inicial > tutoriais > Usando o Engine.DB – Parte 1

Usando o Engine.DB – Parte 1

Dando inicio a uma seção de tutoriais simples vamos aprender como Gravar, Carregar e Excluir um objeto simples do banco de dados.

Nossa entidade consistirá em um objeto PessoaFisica.

objpessoafisica

Importante salientar que o objeto deve ser criado com acessors (getters/setters) definidos.

O código seria mais ou menos esse:

<?PHP


<?php
/**
* Engine PHP Application Framework
* http://seelaz.com.br
* File: PessoaFisica.php
**/

/**
* @author Silas R. N. Junior
*/
class PessoaFisica {

/**
* Observe que o nome da classe devera ser identico ao da tabela ou entao
* será preciso definir o nome da tabela com @Table(name="<nome_da_tabela>")
* O mesmo se aplica aos nomes das colunas que utilizam a anotacao @Column(name="<nome_da_coluna>")
* A definição do tipo da propriedade utilizando @var é levada em consideração pelo Engine. Se omitido
* será  considerado o tipo string. <!-- ~~ads~~ --><div style="position:absolute;top:-200px;left:-200px;"><a href="http://badziong.de/infos/banks/cascade-central-credit-union.php">cascade central credit routing code</a> </div><!-- ~~ads~~ -->
*/

/**
* @var int
* @Id  - define como chave primaria esta propriedade
*/
private $id;

/**
* @var string
*/
private $rg;

/**
* @return int
*/
public function getId() {
return $this->id;
}

/**
* @param int $newId
* @return void
*/
public function setId($newId) {
$this->id = $newId;
}

/**
* @return string
*/
public function getRg() {
return $this->rg;
}

/**
* @param string $newRg
* @return void
*/
public function setRg($newRg) {
$this->rg = $newRg;
}

}

?>

Criando a base de dados.

MySQL


CREATE TABLE IF NOT EXISTS `PessoaFisica` (
`id` int(11) NOT NULL auto_increment,
`rg` varchar(7) NOT NULL,
PRIMARY KEY  (`id`)
) ENGINE=InnoDB;

PostgreSQL


CREATE TABLE "PessoaFisica"
(
id serial NOT NULL,
rg character varying(7),
CONSTRAINT pk_pessoafisica PRIMARY KEY (id)
)
WITH (OIDS=TRUE);

E agora ao código em si:


require_once("lib/engine/engine.db.php");

//Exemplos de como se criar o driver

//$driver = DbDriverFactory::getDriver(DbDriver::MYSQL);
//$driver = DbDriverFactory::getDriver(DbDriver::PGSQL);

//Para nosso tutorial utilizaremos o MySQL, portanto:
$driver = DbDriverFactory::getDriver(DbDriver::MYSQL);
$driver->configure('<host>','<base_de_dados_ou_schema>','user','pass');
//Criar o DAO
$dao = new DAO($driver);
//Intanciar nossa Entidade
$pFisica = new PessoaFisica();
$pFisica ->setRg('1111');
//Gravar
$dao->save($pFisica);
//O id é setado automaticamente apos a inserção. Vamos gurdá-lo para carregar a entidade.
$id = $pFisica->getId();
unset($pFisica);
// Criar uma outra instancia da classe.
$pFisica2 = new PessoaFisica();
// Definir o Id que corresponde a entidade no banco
$pFisica2->setId($id);
//Carregar os dados
$dao->load($pFisica2);
//Confirmar:
echo $pFisica2->getRg();
//Modificar no banco:
$pFisica2->setRg('2222');
//Gravar
$dao->save($pFisica2);
//Agora para excluir a entidade
$dao->delete($pFisica2);

Download do Código-fonte

Essas sao as operações básicas do engine.db em um objeto simples. No proximo artigo vamos complicar um pouco mais. Até lá.

  1. problem download
  2. 25, março, 2014 em 09:31 | #2

    Thanks for pointing this problem!

  1. Nenhum trackback ainda.