Classe básica de acesso a PostgreSQL pronta para extensões
Publicado por Emiliano Eloi Silva Barbosa 10/08/2006
[ Hits: 5.679 ]
Homepage: http://emilianoeloi.com.br
Esta é uma classe básica, com apenas 5 métodos, para servir de exemplo de como construir uma classe de acesso a PostGreSQL, diminuindo o trabalho de configuração de scripts e também o de codificação, uma vez que tudo vai estar encapsulado na classe. Fiquem à vontade para fazer extensões da classe, implementações de métodos e atributos. Peço que ao fazerem isso, lembrem-se de mandar para mim, pois as idéias acrescentadas podem melhorar um trabalho.
De: Evaldo Barbosa reescrito para PGSQL
(...)
class dbPGSQL {
var $DBC; //DATABASE CONNECTION
var $result;
var $recordCount;
// Método de construção, recebe dados de configuração
function dbPGSQL($DBConfig) {
$this->connectDB($DBConfig); //TENTAR A CONEXÃO COM O BANCO DE DADOS
}
// Método de conexção com o banco de dados.
function connectDB($DBConfig) {
$this->DBC = @pg_pconnect("host=".$DBConfig["host"]." port=".$DBConfig["port"]." dbname=".$DBConfig["db"]." user=".$DBConfig["user"]." password=".$DBConfig["pass"]); //CONECTANDO AO BANCO PostGreSQL ATRAVÉS DE UMA CONEXÃO PERSISTENTE, LEIA MAIS SOBRE ISSO
unset($DBConfig); //MATANDO A MATRIZ DE CONFIGURAÇÃO QUE FOI PASSADA COMO PARÃMETRO
}
// Método de execução da consulta SQL
function Exec($sql) {
$this->result = pg_query($sql); //EXECUTANDO O CÓDIGO SQL
$this->recordCount = (pg_num_rows($this->result) > 0) ? pg_num_rows($this->result) : null; //ATRIBUINDO A QUANTIDADE DE REGISTROS AO ATRIBUTO DA CLASSE
}
// Método de desconexão com o banco!!!
function disconnectDB() {
pg_close($this->DBC);
unset($this->DBC);
}
// MÉTODO USADO COMO DESTRUTOR unset($this)
function _dbPGSQL() {
unset($this);
}
}
(...)
Classe de conexão ao banco usando PDO
Classe MySQLDatabase [golfinho/Elefante]
Nenhum comentário foi encontrado.
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
fusermount3 no Ubuntu 25.10 - mantenha o perfil do AppArmor
[Resolvido] dlopen(): error loading libfuse.so.2 AppImages require FUSE to run.
Criação de diretórios e aplicação de restrições de acesso no Linux
Debian Stable travado em atualizações: dist-upgrade não resolve [RESOL... (10)
Aderencia a Obsolencia Programada. (18)
Como você configura seu GNOME? Eu faço assim... (5)









