CVI. ODBC Functions (Unified)
Wstęp
In addition to normal ODBC support, the Unified ODBC functions in PHP allow you to access several databases that have borrowed the semantics of the ODBC API to implement their own API. Instead of maintaining multiple database drivers that were all nearly identical, these drivers have been unified into a single set of ODBC functions.
The following databases are supported by the Unified ODBC functions: Adabas D, IBM DB2, iODBC, Solid, and Sybase SQL Anywhere.
Notatka: There is no ODBC involved when connecting to the above databases. The functions that you use to speak natively to them just happen to share the same names and syntax as the ODBC functions. The exception to this is iODBC. Building PHP with iODBC support enables you to use any ODBC-compliant drivers with your PHP applications. iODBC is maintained by OpenLink Software. More information on iODBC, as well as a HOWTO, is available at www.iodbc.org.
Wymagania
To access any of the supported databases you need to have the required libraries installed.
Instalacja
--with-adabas[=DIR]
PHP 3, PHP 4: Dołącz obsługę Adabas D. DIR jest katalogiem gdzie została zainstalowana baza Adabas, domyślnie /usr/local.
--with-sapdb[=DIR]
Dołącz obsługę SAP DB. DIR jest katalogiem gdzie została zainstalowana baza, domyślnie /usr/local.
--with-solid[=DIR]
PHP 3, PHP 4: Dołącz obsługę Solid. DIR to katalog instalacji Solid, domyślnie /usr/local/solid
--with-ibm-db2[=DIR]
PHP 3, PHP 4: Dołącz obsługę IBM DB2. DIR to katalog instalcji DB2, domyślnie /home/db2inst1/sqllib.
--with-empress[=DIR]
PHP 3, PHP 4: Dołącz obsługę Empress. DIR to katalog instalacji Empress, domyślnie $EMPRESSPATH. W PHP 4 i nowszych, ta opcja dotyczy tylko Empress w wersjach 8.60 i nowszych.
--with-empress-bcs[=DIR]
Dołącz obsługę Empress Local Access. DIR to katalog instalacji Empress, domyślnie $EMPRESSPATH. W PHP 4 i nowszych, ta opcja dotyczy tylko Empress w wersjach 8.60 i nowszych.
--with-birdstep[=DIR]
Dołącz obsługę Birdstep. DIR to katalog instalacji Birdstep, domyślnie /usr/local/birdstep.
--with-custom-odbc[=DIR]
PHP 3, PHP 4: Dołącza obsługę niestandardowej biblioteki ODBC. Parametrem jest główny katalog biblioteki, domyślnie /usr/local.
Te opcja jest używana tylko jeśli zdefiniowałeś CUSTOM_ODBC_LIBS przy uruchomieniu skryptu configure. Niezbędne jest także wstawienie prawidłowego pliku odbc.h na ścieżkę include. Jeśli nie posiadasz takiego pliku, stwórz go i dołącz stamtąd swój własny nagłówek. Twój nagłówek może także wymagać pewnych definicji, zwłaszcza jeśli jest to biblioteka wieloplatformowa. Zdefiniuj je w CFLAGS.
Na przykład możesz używać Sybase SQL Anywhere na QNX w następujący sposób: CFLAGS=-DODBC_QNX LDFLAGS=-lunix CUSTOM_ODBC_LIBS="-ldblib -lodbc" ./configure --with-custom-odbc=/usr/lib/sqlany50
--with-iodbc[=DIR]
PHP 3, PHP 4: Dołącz obsługę iODBC. DIR jest to katalog instalacji iODBC, domyślnie /usr/local.
Ta opcja została rozwinięta dla iODBC Driver Manager, darmowo rozpowszechnianego menedżera sterowników ODBC który działa na różnych odmianach Uniksa.
--with-esoob[=DIR]
PHP 3: Opcja niedostępna w PHP 3
PHP 4: Dołącz obsługę Easysoft OOB. DIR to katalog instalacji OOB, domyślnie /usr/local/easysoft/oob/client.
--with-unixODBC[=DIR]
PHP 3: Opcja niedostępna w PHP 3
PHP 4: Dołącz obsługę unixODBC. DIR to katalog instalacji unixODBC, domyślnie /usr/local.
--with-openlink[=DIR]
PHP 3, PHP 4: Dołącz obsługę OpenLink ODBC. DIR to katalog instalacji OpenLink, domyślnie /usr/local/openlink. Od wersji 4.0.6 PHP ta opcja konfiguracji nie jest ważna. Jeśli chcesz używać systemu ODBC firmy OpenLink Software, użyj opcji
--with-iodbc
.--with-dbmaker[=DIR]
PHP 3: Opcja niedostępna w PHP 3
PHP 4: Dołącz obsługę DBMaker. DIR to katalog instalacji DBMakera domyślnie tam, gdzie została zainstalowana najnowsza wersja DBMakera (np /home/dbmaker/3.6).
Aby wyłączyć zunifikowaną obsłgę ODBC w PHP 3, należy
użyć parametru --disable-unified-odbc
do
polecenia configure. Dotyczy to tylko przypadków, kiedy używany jest
interfejs iODBC, Adabas, Solid, Velocis lub niestandardowe ODBC.
PHP w wersji dla systemów Windows posiada wbudowaną obsługę dla tego rozszerzenia. Nie trzeba ładować żadnych dodatkowych rozszerzeń aby korzystać z tych funkcji.
Konfiguracja uruchomieniowa
Na działanie tych funcji wpływają ustawienia zawarte w pliku php.ini.
Tabela 1. Unified ODBC Configuration Options
Name | Default | Changeable | Changelog |
---|---|---|---|
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 |
Notatka: Entries marked with * are not implemented yet.
Oto krótkie wyjaśnienie dyrektyw konfiguracji.
odbc.default_db
stringODBC data source to use if none is specified in odbc_connect() or odbc_pconnect().
odbc.default_user
stringUser name to use if none is specified in odbc_connect() or odbc_pconnect().
odbc.default_pw
stringPassword to use if none is specified in odbc_connect() or odbc_pconnect().
odbc.allow_persistent
booleanWhether to allow persistent ODBC connections.
odbc.check_persistent
booleanCheck that a connection is still valid before reuse.
odbc.max_persistent
integerThe maximum number of persistent ODBC connections per process.
odbc.max_links
integerThe maximum number of ODBC connections per process, including persistent connections.
odbc.defaultlrl
integerHandling of LONG fields. Specifies the number of bytes returned to variables.
Jeśli użyty zostanie typ integer, wartość zostanie liczona w bajtach. Można także użyć notacji skrótowej opisanej w FAQ.
odbc.defaultbinmode
integerHandling of binary data.
Typy zasobów
To rozszerzenie nie posiada żadnych rodzajów zasobów.
Stałe predefiniowane
Poniższe stałe są zdefiniowane w tym rozszerzeniu i stają się dostępne, gdy rozszerzenie jest dokompilowane do PHP, lub załadowane dynamicznie przy starcie.
- 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)
- Spis treści
- odbc_autocommit -- Toggle autocommit behaviour
- odbc_binmode -- Handling of binary column data
- odbc_close_all -- Close all ODBC connections
- odbc_close -- Close an ODBC connection
- odbc_columnprivileges -- Returns a result identifier that can be used to fetch a list of columns and associated privileges
- odbc_columns -- Lists the column names in specified tables
- odbc_commit -- Commit an ODBC transaction
- odbc_connect -- Connect to a datasource
- odbc_cursor -- Get cursorname
- odbc_data_source -- Returns information about a current connection
- odbc_do -- Synonym for odbc_exec()
- odbc_error -- Get the last error code
- odbc_errormsg -- Get the last error message
- odbc_exec -- Prepare and execute a SQL statement
- odbc_execute -- Execute a prepared statement
- odbc_fetch_array -- Fetch a result row as an associative array
- odbc_fetch_into -- Fetch one result row into array
- odbc_fetch_object -- Fetch a result row as an object
- odbc_fetch_row -- Fetch a row
- odbc_field_len -- Get the length (precision) of a field
- odbc_field_name -- Get the columnname
- odbc_field_num -- Return column number
- odbc_field_precision -- Synonym for odbc_field_len()
- odbc_field_scale -- Get the scale of a field
- odbc_field_type -- Datatype of a field
- odbc_foreignkeys -- Returns a list of foreign keys in the specified table or a list of foreign keys in other tables that refer to the primary key in the specified table
- odbc_free_result -- Free resources associated with a result
- odbc_gettypeinfo -- Returns a result identifier containing information about data types supported by the data source
- odbc_longreadlen -- Handling of LONG columns
- odbc_next_result -- Checks if multiple results are available
- odbc_num_fields -- Number of columns in a result
- odbc_num_rows -- Number of rows in a result
- odbc_pconnect -- Open a persistent database connection
- odbc_prepare -- Prepares a statement for execution
- odbc_primarykeys -- Returns a result identifier that can be used to fetch the column names that comprise the primary key for a table
- odbc_procedurecolumns -- Retrieve information about parameters to procedures
- odbc_procedures -- Get the list of procedures stored in a specific data source
- odbc_result_all -- Print result as HTML table
- odbc_result -- Get result data
- odbc_rollback -- Rollback a transaction
- odbc_setoption -- Adjust ODBC settings
- odbc_specialcolumns -- Returns either the optimal set of columns that uniquely identifies a row in the table or columns that are automatically updated when any value in the row is updated by a transaction
- odbc_statistics -- Retrieve statistics about a table
- odbc_tableprivileges -- Lists tables and the privileges associated with each table
- odbc_tables -- Get the list of table names stored in a specific data source
Poprzedni | Spis treści | Następny |
ociwritetemporarylob | Początek rozdziału | <