# FrontBase Functions

## Introduction

These functions allow you to access FrontBase database servers. More information about FrontBase can be found at » http://www.frontbase.com/.

Documentation for FrontBase can be found at » http://www.frontbase.com/cgi-bin/WebObjects/FrontBase.woa/wa/productsPage?currentPage=Documentation.

Frontbase support has been added to PHP 4.0.6.

## Requirements

You must install the FrontBase database server or at least the fbsql client libraries to use this functions. You can get FrontBase from » http://www.frontbase.com/.

## Installation

In order to have these functions available, you must compile PHP with fbsql support by using the --with-fbsql[=DIR] option. If you use this option without specifying the path to fbsql, PHP will search for the fbsql client libraries in the default installation location for the platform. Users who installed FrontBase in a non standard directory should always specify the path to fbsql: --with-fbsql=/path/to/fbsql. This will force PHP to use the client libraries installed by FrontBase, avoiding any conflicts.

## Runtime Configuration

The behaviour of these functions is affected by settings in php.ini.

FrontBase configuration options
Name | Default | Changeable | Changelog
--- | --- | --- | ---
fbsql.allow_persistent | "1" | PHP_INI_SYSTEM | Available since PHP 4.2.0.
fbsql.generate_warnings | "0" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.autocommit | "1" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.max_persistent | "-1" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.max_links | "128" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.max_connections | "128" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.max_results | "128" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.batchSize | "1000" | PHP_INI_SYSTEM | Available since PHP 4.2.0. Removed in PHP 5.1.0.
fbsql.default_host | NULL | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.default_user | "_SYSTEM" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.default_password | "" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.default_database | "" | PHP_INI_SYSTEM | Available since PHP 4.0.6.
fbsql.default_database_password | "" | PHP_INI_SYSTEM | Available since PHP 4.0.6.

For further details and definitions of the PHP_INI_* constants, see the php.ini directives.

## Resource Types

## Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

`FBSQL_ASSOC` (integer)
`FBSQL_NUM` (integer)
`FBSQL_BOTH` (integer)
`FBSQL_LOCK_DEFERRED` (integer)
`FBSQL_LOCK_OPTIMISTIC` (integer)
`FBSQL_LOCK_PESSIMISTIC` (integer)
`FBSQL_ISO_READ_UNCOMMITTED` (integer)
`FBSQL_ISO_READ_COMMITTED` (integer)
`FBSQL_ISO_REPEATABLE_READ` (integer)
`FBSQL_ISO_SERIALIZABLE` (integer)
`FBSQL_ISO_VERSIONED` (integer)
`FBSQL_UNKNOWN` (integer)
`FBSQL_STOPPED` (integer)
`FBSQL_STARTING` (integer)
`FBSQL_RUNNING` (integer)
`FBSQL_STOPPING` (integer)
`FBSQL_NOEXEC` (integer)
`FBSQL_LOB_DIRECT` (integer)
`FBSQL_LOB_HANDLE` (integer)

## Table of Contents

- fbsql_affected_rows — Get number of affected rows in previous FrontBase operation
- fbsql_autocommit — Enable or disable autocommit
- fbsql_blob_size — Get the size of a BLOB
- fbsql_change_user — Change logged in user of the active connection
- fbsql_clob_size — Get the size of a CLOB
- fbsql_close — Close FrontBase connection
- fbsql_commit — Commits a transaction to the database
- fbsql_connect — Open a connection to a FrontBase Server
- fbsql_create_blob — Create a BLOB
- fbsql_create_clob — Create a CLOB
- fbsql_create_db — Create a FrontBase database
- fbsql_data_seek — Move internal result pointer
- fbsql_database_password — Sets or retrieves the password for a FrontBase database
- fbsql_database — Get or set the database name used with a connection
- fbsql_db_query — Send a FrontBase query
- fbsql_db_status — Get the status for a given database
- fbsql_drop_db — Drop (delete) a FrontBase database
- fbsql_errno — Returns the error number from previous operation
- fbsql_error — Returns the error message from previous operation
- fbsql_fetch_array — Fetch a result row as an associative array, a numeric array, or both
- fbsql_fetch_assoc — Fetch a result row as an associative array
- fbsql_fetch_field — Get column information from a result and return as an object
- fbsql_fetch_lengths — Get the length of each output in a result
- fbsql_fetch_object — Fetch a result row as an object
- fbsql_fetch_row — Get a result row as an enumerated array
- fbsql_field_flags — Get the flags associated with the specified field in a result
- fbsql_field_len — Returns the length of the specified field
- fbsql_field_name — Get the name of the specified field in a result
- fbsql_field_seek — Set result pointer to a specified field offset
- fbsql_field_table — Get name of the table the specified field is in
- fbsql_field_type — Get the type of the specified field in a result
- fbsql_free_result — Free result memory
- fbsql_get_autostart_info — Description
- fbsql_hostname — Get or set the host name used with a connection
- fbsql_insert_id — Get the id generated from the previous INSERT operation
- fbsql_list_dbs — List databases available on a FrontBase server
- fbsql_list_fields — List FrontBase result fields
- fbsql_list_tables — List tables in a FrontBase database
- fbsql_next_result — Move the internal result pointer to the next result
- fbsql_num_fields — Get number of fields in result
- fbsql_num_rows — Get number of rows in result
- fbsql_password — Get or set the user password used with a connection
- fbsql_pconnect — Open a persistent connection to a FrontBase Server
- fbsql_query — Send a FrontBase query
- fbsql_read_blob — Read a BLOB from the database
- fbsql_read_clob — Read a CLOB from the database
- fbsql_result — Get result data
- fbsql_rollback — Rollback a transaction to the database
- fbsql_rows_fetched — Get the number of rows affected by the last statement
- fbsql_select_db — Select a FrontBase database
- fbsql_set_characterset — Change input/output character set
- fbsql_set_lob_mode — Set the LOB retrieve mode for a FrontBase result set
- fbsql_set_password — Change the password for a given user
- fbsql_set_transaction — Set the transaction locking and isolation
- fbsql_start_db — Start a database on local or remote server
- fbsql_stop_db — Stop a database on local or remote server
- fbsql_table_name — Get table name of field
- fbsql_tablename — Alias of of fbsql_table_name
- fbsql_username — Get or set the username for the connection
- fbsql_warnings — Enable or disable FrontBase warnings