Forum und email

Funzioni ODBC (Unificate)

Introduzione

In aggiunta al normale supporto ODBC, le funzioni ODBC unificate del PHP consentono l'accesso a diversi database che hanno preso in prestito la semantica dell'API ODBC per implementare le loro API. Invece di mantenere più driver per database che sono tutti pressoché identici, questi driver sono stati riuniti in un singolo insieme di funzioni ODBC.

Le funzioni ODBC unificate supportano i seguenti database: » Adabas D, » IBM DB2, » iODBC, » Solid ed » Sybase SQL Anywhere.

Nota: Nella connessione ai database sopra elencati non vengono coinvolte funzioni ODBC. Le funzioni che vengono utilizzate per collegarsi nativamente con essi condividono solamente lo stesso nome e sintassi delle funzioni ODBC. L'eccezione a questo è iODBC. Compilando il PHP con il supporto di iODBC, si può utilizzare qualsiasi driver compatibile ODBC nelle applicazioni PHP. iODBC è gestito da » OpenLink Software. Maggiori informazioni su iODBC, ed un HOWTO sono diponibili nel sito » www.iodbc.org.

Requisiti

Per potere accedere ai database supportati occorre avere installato le librerie necessarie.

Installazione

--with-adabas[=DIR]

Include il supporto per Adabas D. DIR indica la directory di installazione di Adabas, il default è /usr/local.

--with-sapdb[=DIR]

Include il supporto per SAP DB. DIR indica la directory di installazione di SAP DB, il default è /usr/local.

--with-solid[=DIR]

Include il supporto per Solid. DIR indica la directory di installazione di Solid, il default è /usr/local/solid.

--with-ibm-db2[=DIR]

Include il supporto per IBM DB2. DIR indica la directory di installazione di DB2, il default è /home/db2inst1/sqllib.

--with-empress[=DIR]

Include il supporto per Empress. DIR indica la directory di installazione di Empress, il default è $EMPRESSPATH. A partire da PHP 4, questa opzione supporta solo Empress Versione 8.60 e successive.

--with-empress-bcs[=DIR]

Include il supporto per Empress Local Access. DIR indica la directory di installazione di Empress, il default è $EMPRESSPATH. A partire da PHP 4, questa opzione supporta solo Empress Versione 8.60 e successive.

--with-birdstep[=DIR]

Include il supporto per Birdstep. DIR indica la directory di installazione di Birdstep, il default è /usr/local/birdstep.

--with-custom-odbc[=DIR]

Include il supporto definito dall'utente per ODBC. DIR indica la directory di installazione di ODBC, il default è /usr/local. Accertarsi di definire CUSTOM_ODBC_LIBS e di avere odbc.h nelle directory di include. Ad esempio, si devorebbe definire i seguenti parametri per Sybase SQL Anywhere 5.5.00 su QNX, prima di eseguire lo script di configurazione:

   CPPFLAGS="-DODBC_QNX -DSQLANY_BUG"
   LDFLAGS=-lunix
   CUSTOM_ODBC_LIBS="-ldblib -lodbc".

--with-iodbc[=DIR]

Include il supporto per iODBC. DIR indica la directory di installazione di iODBC, il default è /usr/local.

--with-esoob[=DIR]

Include il supporto per Easysoft OOB. DIR indica la directory di installazione di OOB, il default è /usr/local/easysoft/oob/client.

--with-unixODBC[=DIR]

Include il supporto per unixODBC. DIR indica la directory di installazione di unixODBC, il default è /usr/local.

Include il supporto per OpenLink ODBC. DIR indica la directory di installazione di OpenLink, il default è /usr/local. This is the same as iODBC.

--with-dbmaker[=DIR]

Include il supporto per DBMaker. DIR indica la directory di installazione di DBMaker, per default si ha la directory in cui è installata l'ultima versione di DBMaker (tipo /home/dbmaker/3.6).

Per disabilitare il supporto alle funzioni ODBC unificate in PHP 3 aggiungere il parametro --disable-unified-odbc nella linea di configurazione. Ciò è applicabile soltanto se è abilitata una delle seguenti interfaccie: iODBC, Adabas, Solid, Velocis oppure una versione personalizzata di ODBC.

La versione per Windows di PHP ha già compilato il supporto per questo modulo. Non occorre caricare alcun modulo addizionale per potere utilizzare queste funzioni.

Configurazione di Runtime

Il comportamento di queste funzioni è influenzato dalle impostazioni di php.ini.

Parametrizzazione per il modulo Funzioni ODBC Unificate
Nome Default Modificabile Log delle modifiche
odbc.default_db * NULL PHP_INI_ALL
odbc.default_user * NULL PHP_INI_ALL
odbc.default_pw * NULL PHP_INI_ALL
odbc.allow_persistent "1" PHP_INI_SYSTEM  
odbc.check_persistent "1" PHP_INI_SYSTEM  
odbc.max_persistent "-1" PHP_INI_SYSTEM  
odbc.max_links "-1" PHP_INI_SYSTEM  
odbc.defaultlrl "4096" PHP_INI_ALL  
odbc.defaultbinmode "1" PHP_INI_ALL  

Nota: I parametri segnati con * non sono ancora implementati.

Per maggiori dettagli sulle costanti PHP_INI_* vedere Impostazioni del php.ini.

Breve descrizione dei parametri di configurazione.

odbc.default_db string

Sorgenti di dati ODBC da utilizzare se non viene fornita in odbc_connect() o odbc_pconnect().

odbc.default_user string

Nome utente da usare se non viene passato nelle funzioni odbc_connect() o odbc_pconnect().

odbc.default_pw string

Password da usare se non viene passato nelle funzioni odbc_connect() o odbc_pconnect().

odbc.allow_persistent boolean

Indica se permettere le connessioni ODBC persistenti.

odbc.check_persistent boolean

Verifica se una connessione è ancora valida prima di ri-utilizzarla.

odbc.max_persistent integer

Imposta il numero massimo di connessioni persistenti permesse per processo.

Imposta il numero massimo di connessioni permesse per processo, comprese le connessioni persistenti.

odbc.defaultlrl integer

Gestisce i campi di tipo LONG. Specifica il numero di byte da ritornare alla variabile.

Quando un integer è usato, il valore è misurato in byte. Si può anche usare una notazione abbreviata come descritto in questa FAQ.
odbc.defaultbinmode integer

Gestione dei dati binari.

Tipi di risorse

Questa estensione non definisce alcun tipo di risorsa.

Costanti predefinite

Queste costanti sono definite da questa estensione e sono disponibili solo se l'estensione è stata compilata nel PHP o se è stata caricata dinamicamente a runtime.

ODBC_TYPE (integer)
ODBC_BINMODE_PASSTHRU (integer)
ODBC_BINMODE_RETURN (integer)
ODBC_BINMODE_CONVERT (integer)
SQL_ODBC_CURSORS (integer)
SQL_CUR_USE_DRIVER (integer)
SQL_CUR_USE_IF_NEEDED (integer)
SQL_CUR_USE_ODBC (integer)
SQL_CONCURRENCY (integer)
SQL_CONCUR_READ_ONLY (integer)
SQL_CONCUR_LOCK (integer)
SQL_CONCUR_ROWVER (integer)
SQL_CONCUR_VALUES (integer)
SQL_CURSOR_TYPE (integer)
SQL_CURSOR_FORWARD_ONLY (integer)
SQL_CURSOR_KEYSET_DRIVEN (integer)
SQL_CURSOR_DYNAMIC (integer)
SQL_CURSOR_STATIC (integer)
SQL_KEYSET_SIZE (integer)
SQL_CHAR (integer)
SQL_VARCHAR (integer)
SQL_LONGVARCHAR (integer)
SQL_DECIMAL (integer)
SQL_NUMERIC (integer)
SQL_BIT (integer)
SQL_TINYINT (integer)
SQL_SMALLINT (integer)
SQL_INTEGER (integer)
SQL_BIGINT (integer)
SQL_REAL (integer)
SQL_FLOAT (integer)
SQL_DOUBLE (integer)
SQL_BINARY (integer)
SQL_VARBINARY (integer)
SQL_LONGVARBINARY (integer)
SQL_DATE (integer)
SQL_TIME (integer)
SQL_TIMESTAMP (integer)
SQL_TYPE_DATE (integer)
SQL_TYPE_TIME (integer)
SQL_TYPE_TIMESTAMP (integer)
SQL_BEST_ROWID (integer)
SQL_ROWVER (integer)
SQL_SCOPE_CURROW (integer)
SQL_SCOPE_TRANSACTION (integer)
SQL_SCOPE_SESSION (integer)
SQL_NO_NULLS (integer)
SQL_NULLABLE (integer)
SQL_INDEX_UNIQUE (integer)
SQL_INDEX_ALL (integer)
SQL_ENSURE (integer)
SQL_QUICK (integer)

Indice dei contenuti

  • odbc_autocommit — Valorizza il parametro autocommit
  • odbc_binmode — Gestione delle colonne di dati binari
  • odbc_close_all — Chiude tutte le connessioni ODBC
  • odbc_close — Chiude una connessione ODBC
  • odbc_columnprivileges — Restituisce un identificatore di risultato che permette di ricavare l'elenco delle colonne e dei privilegi ad esse associati.
  • odbc_columns — Elenca i nomi delle colonne nella tabella specificata.
  • odbc_commit — Esegue una transazione ODBC
  • odbc_connect — Apre una connessione con una fonte di dati
  • odbc_cursor — Restituisce il nome del cursore
  • odbc_data_source — Restituisce informazionisulla connessione corrente
  • odbc_do — Sinonimo di odbc_exec
  • odbc_error — Restituisce l'ultimo codice di errore
  • odbc_errormsg — Restituisce l'ultimo messaggio d'errore
  • odbc_exec — Prepara ed esegue una espressione SQL
  • odbc_execute — Esecuzione di un'espressione memorizzata
  • odbc_fetch_array — Scarica una riga da un risultato in una matrice
  • odbc_fetch_into — Scarica una riga del risultato della query in un array
  • odbc_fetch_object — Scarica una riga da un risultato come oggetto
  • odbc_fetch_row — Estrae una riga
  • odbc_field_len — Restituisce la dimensione (precisione) di un campo
  • odbc_field_name — Restituisce il nome della colonna
  • odbc_field_num — Restituisce il numero di colonna
  • odbc_field_precision — Sinonimo di odbc_field_len
  • odbc_field_scale — Restituisce la scala di un campo
  • odbc_field_type — Tipo di dato di campo
  • odbc_foreignkeys — Restituisce l'elenco delle chiavi esterne per la tabella indicata, oppure la lista delle chiavi esterne in altre tabelle che fanno riferimento alla chiave primaria della tabella indicata.
  • odbc_free_result — Libera le risorse associate ad un risultato
  • odbc_gettypeinfo — Restituisce un identificatore di risultato contenente informazioni sui tipi di dati supportati dalla sorgente di dati
  • odbc_longreadlen — Gestione di colonne LONG
  • odbc_next_result — Verifica se sono disponibili più risultati
  • odbc_num_fields — Numero di colonne in un esito
  • odbc_num_rows — Numero di righe in un risultato
  • odbc_pconnect — Apre una connessione persistente verso un database
  • odbc_prepare — Predispone un'espressione all'esecuzione
  • odbc_primarykeys — Restituisce un identificatore di risultato che può essere utilizzato per ricavare il nome della colonna che contiene la chiave primaria della tabella.
  • odbc_procedurecolumns — Recupera informazioni sui parametri delle procedure.
  • odbc_procedures — Restituisce l'elenco delle procedure memorizzate in una specifica sorgente di dati.
  • odbc_result_all — Visualizza il risultato in una tabella HTML
  • odbc_result — Restituisce il contenuto dei campi
  • odbc_rollback — Annulla una transazione
  • odbc_setoption — Impostazione dei parametri ODBC
  • odbc_specialcolumns — Restituisce sia il set di colonne che identificano in modo univoco una riga nella tabella, sia colonne che sono automaticamente aggiornate quando un qualsiasi campo della riga viene aggiornato da una transazione.
  • odbc_statistics — Recupera informazioni statistiche sulla tabella
  • odbc_tableprivileges — Elenca le tabelle ed i privilegi ad esse associati.
  • odbc_tables — Restituisce l'elenco delle tabelle presenti in una specifica sorgente di dati