Execute a query on an InterBase database

- « ibase_prepare

- ibase_restore »

- PHP Manual
- Firebird/InterBase Functions
- Execute a query on an InterBase database

# ibase_query

(PHP 5, PHP 7 < 7.4.0)

ibase_query — Execute a query on an InterBase database

### Description

ibase_query(resource `$link_identifier` = ?, string `$query`, int `$bind_args` = ?): resource

Performs a query on an InterBase database.

### Parameters

`link_identifier`

  An InterBase link identifier. If omitted, the last opened link is assumed.

`query`

  An InterBase query.

`bind_args`

### Return Values

If the query raises an error, returns `false`. If it is successful and there is a (possibly empty) result set (such as with a SELECT query), returns a result identifier. If the query was successful and there were no results, returns `true`.

> Note:

> In PHP 5.0.0 and up, this function will return the number of rows affected by the query for INSERT, UPDATE and DELETE statements. In order to retain backward compatibility, it will return `true` for these statements if the query succeeded without affecting any rows.

### Errors/Exceptions

If you get some error like "arithmetic exception, numeric overflow, or string truncation. Cannot transliterate character between character sets" (this occurs when you try use some character with accents) when using this and after ibase_query() you must set the character set (i.e. ISO8859_1 or your current character set).

### Examples

Example #1 ibase_query() example

    <?php

    $host = 'localhost:/path/to/your.gdb';

    $dbh = ibase_connect($host, $username, $password);
    $stmt = 'SELECT * FROM tblname';

    $sth = ibase_query($dbh, $stmt) or die(ibase_errmsg());

    ?>

### See Also

- ibase_errmsg() - Return error messages
- ibase_fetch_row() - Fetch a row from an InterBase database
- ibase_fetch_object() - Get an object from a InterBase database
- ibase_free_result() - Free a result set