XXIV. funções dbx

Introdução

O módulo dbx é uma camada de banco de dados abstrata (db 'X', onde 'X' é o banco de dados suportado). As funções dbx permitem à você acessar todos os banco de dados suportados usando uma única convenção de chamada. As próprias funções-dbx não atuam diretamente com os bancos de dados, mas sim nos módulos que são usados para suportar estes banco de dados.

Dependências

Para poder usar o banco de dados com o módulo-dbx, o módulo precisa estar linkado ou carregado no PHP, e o módulo do banco de dados precisa ser suportado pelo módulo-dbx. Atualmente, os seguintes banco de dados são suportados, mas haverão mais:

A documentação para adicionar suporte ao banco de dados no dbx pode ser encontrada em http://www.guidance.nl/php/dbx/doc/.

Instalação

Para ter estas funções disponíveis, você precisa compilar o PHP com suporte à dbx usando a opção --enable-dbx e todas as opções para o banco de dados que será usado, ex: para o MySQL você deve especificar --with-mysql=[DIR]. Para que outros banco de dados tenham suporte ao módulo-dbx consulte o manual do seu banco de dados.

Configurações em execução

O comportamento dessas funções podem ser modificado pelas configurações do php.ini.

Tabela 1. Opções de Configuração do DBX

NomePadrãoChangeable
dbx.colnames_case"unchanged"PHP_INI_SYSTEM
Para mais detalhes e definições das constantes PHP_INI_* veja ini_set().

Nota: Esta opção-ini está disponível à partir do PHP 4.3.0.

Breve descrição das diretivas de configuração.

dbx.colnames_case string

Os nomes das colunas podem ser retornados "inalterados" ou convertidos para "caixa alta" ou "caixa baixa". Esta diretiva pode ser sobreescrita alterando a "flag" de dbx_query().

Tipos Resource

Há dois tipos de recursos usados no módulo dbx. O primeiro é um link-objeto para a conexão com o banco de dados, e o segundo é o resultado-objeto que guarda o resultado da consulta.

Constantes pré-definidas

As contantes abaixo são definidas por esta extensão e somente estarão disponíveis quando a extensão foi compilada com o PHP ou carregada dinamicamente durante a execução.

DBX_MYSQL (inteiro)

DBX_ODBC (inteiro)

DBX_PGSQL (inteiro)

DBX_MSSQL (inteiro)

DBX_FBSQL (inteiro)

DBX_OCI8 (inteiro) (disponível à partir do PHP 4.3.0)

DBX_SYBASECT (inteiro)

DBX_SQLITE (inteiro) (somente via cvs)

DBX_PERSISTENT (inteiro)

DBX_RESULT_INFO (inteiro)

DBX_RESULT_INDEX (inteiro)

DBX_RESULT_ASSOC (inteiro)

DBX_RESULT_UNBUFFERED (inteiro) (somente via CVS)

DBX_COLNAMES_UNCHANGED (inteiro) (disponível à partir do PHP 4.3.0)

DBX_COLNAMES_UPPERCASE (inteiro) (disponível à partir do PHP 4.3.0)

DBX_COLNAMES_LOWERCASE (inteiro) (disponível à partir do PHP 4.3.0)

DBX_CMP_NATIVE (inteiro)

DBX_CMP_TEXT (inteiro)

DBX_CMP_NUMBER (inteiro)

DBX_CMP_ASC (inteiro)

DBX_CMP_DESC (inteiro)

Índice
dbx_close -- Encera uma conexão/banco de dados
dbx_compare -- Compara duas linhas para finalidades de ordenação
dbx_connect -- Inicia uma conexão/banco de dados
dbx_error --  Mostra a mensagem de erro da última função chamada no módulo (não apenas na conexão).
dbx_escape_string --  Transforma uma string para que ela possa ser seguramente usada em comandos-sql.
dbx_fetch_row -- Lê as linhas do resultado de uma requisição que tem a flag DBX_RESULT_UNBUFFERED ligada
dbx_query -- Envia uma requisição e armazena todos os resultados (se houver)
dbx_sort --  Ordena um resultado de uma dbx_query usando uma função pré-definida