# fbsql_query

(PHP 4 >= 4.0.6, PHP 5, PHP 7)

fbsql_query — Send a FrontBase query

### 说明

fbsql_query ( string `$query` [, resource `$link_identifier` [, int `$batch_size` ]] ) : resource

Sends a `query` to the currently active database on the server.

If the query succeeds, you can call fbsql_num_rows() to find out how many rows were returned for a SELECT statement or fbsql_affected_rows() to find out how many rows were affected by a DELETE, INSERT, REPLACE, or UPDATE statement.

### 参数

`query`

  The SQL query to be executed.

  > Note:

  > The query string shall always end with a semicolon.

`link_identifier`

  由 fbsql_connect() 或 fbsql_pconnect() 返回的 FrontBase 链接标识符.

  如可选并未指定，函数会尝试查找一个到 FrontBase 服务器的开放链接，且如没有找到这样的链接，会尝试通过不带参数调用 fbsql_connect() 来创建一个。

`batch_size`

### 返回值

fbsql_query() returns `TRUE` (non-zero) or `FALSE` to indicate whether or not the query succeeded. A return value of `TRUE` means that the query was legal and could be executed by the server. It does not indicate anything about the number of rows affected or returned. It is perfectly possible for a query to succeed but affect no rows or return no rows.

For SELECT statements, fbsql_query() returns a new result identifier that you can pass to fbsql_result().

fbsql_query() will also fail and return `FALSE` if you don't have permission to access the table(s) referenced by the query.

### 范例

The following query is syntactically invalid, so fbsql_query() fails and returns `FALSE`:

Example #1 fbsql_query() example

    <?php
    $result = fbsql_query("SELECT * WHERE 1=1")
        or die ("Invalid query");
    ?>

The following query is semantically invalid if my_col is not a column in the table my_tbl, so fbsql_query() fails and returns `FALSE`:

Example #2 fbsql_query() example

    <?php
    $result = fbsql_query ("SELECT my_col FROM my_tbl;")
        or die ("Invalid query");
    ?>

### 参见

- fbsql_affected_rows() - Get number of affected rows in previous FrontBase operation
- fbsql_db_query() - Send a FrontBase query
- fbsql_free_result() - Free result memory
- fbsql_result() - Get result data
- fbsql_select_db() - Select a FrontBase database
- fbsql_connect() - Open a connection to a FrontBase Server