LXIX. Funzioni ODBC Unificate

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 la 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.

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, e un HOWTO sono diponibili nel sito www.iodbc.org.

Requisiti

Le funzioni ODBC Unificate supportano i seguenti database: Adabas D, IBM DB2, iODBC, Solid e Sybase SQL Anywhere. Per potere accedere a questi database, occorre avere installato le librerie necessarie.

Installazione

Vedere il capitolo Installazione su Unix Systems per avere maggiori informazioni su come configurare PHP per accedere a questi database.

Configurazione del Runtime

Il comportamento delle funzioni ODBC viene modificato da parametri presenti nel file di configurazione php.ini.

Tabella 1. Opzioni di configurazione per ODBC

NomeDefaultModificabile
odbc.default_db *NULLPHP_INI_ALL
odbc.default_user *NULLPHP_INI_ALL
odbc.default_pw *NULLPHP_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: Le linee marcate con * non sono state ancora implementate.

Per avere maggiori dettagli e le definizioni delle costanti PHP_INI_* vedere ini_set().

Di seguito verranno brevemente illustrate le direttive di configurazione.

odbc.default_db string

Sorgente dei dati ODBC da utilizzare se non viene specificato nulla in odbc_connect() o in odbc_pconnect().

odbc.default_user string

Nome utente da utilizzare se non viene specificato in odbc_connect() o in odbc_pconnect().

odbc.default_pw string

Password da utilizzare se non viene specificata in odbc_connect() o in odbc_pconnect().

odbc.allow_persistent boolean

Abilita o meno le connessioni ODBC persistenti.

odbc.check_persistent boolean

Controlla se una connessione è ancora valida prima del riutilizzo.

odbc.max_persistent integer

Indica il numero massimo di connessioni persistenti ammesse per processo.

odbc.max_links integer

Indica il numero massimo di connessioni ammesse per processo, compresse le persistenti.

odbc.defaultlrl integer

Gestione dei campi di tipo LONG. Specifica il numero di byte da restituire alla variabile.

odbc.defaultbinmode integer

Gestione dei dati binari.

Tipi di risorse

Questa estensione non definisce alcun tipo di risorsa.

Costanti predefinite

Questa estensione non definisce alcuna costante.

Sommario
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. La funzione ritorna un identificatore di risultato contenenti le informazioni.
odbc_commit -- Esegue una transazione ODBC
odbc_connect -- Apre una connessione con una fonte di dati
odbc_cursor -- Restituisce il nome del cursore
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 --  Restituisce una riga in un array associativo
odbc_fetch_into -- Scarica una riga del risultato della query in un array
odbc_fetch_object --  Restituisce una riga di risultato come un 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. La funzione ritorna un identificatore di risultato che punta alle informazioni reperite.
odbc_result_all -- Visualizza il risultato in una tabella HTML
odbc_result -- Restituisce il contenuto dei campi
odbc_rollback -- Annulla una transazione
odbc_setoption --  Settaggio dei parametri ODBC. Restituisce FALSE se si verifica un errore, altrimenti TRUE.
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. Restituisce l'identificatore di risultato in cui vi sono le informazioni.