pg_query
(PHP 4 >= 4.2.0, PHP 5, PHP 7)
pg_query — Execute a query
Description
pg_query ([ resource $connection ], string $query ) : resource|false
pg_query() executes the query
on the specified database connection
. pg_query_params() should be preferred in most cases.
If an error occurs, and false
is returned, details of the error can be retrieved using the pg_last_error() function if the connection is valid.
Note: Although
connection
can be omitted, it is not recommended, since it can be the cause of hard to find bugs in scripts.
Note:
This function used to be called pg_exec(). pg_exec() is still available for compatibility reasons, but users are encouraged to use the newer name.
Parameters
-
connection
-
PostgreSQL database connection resource. When
connection
is not present, the default connection is used. The default connection is the last connection made by pg_connect() or pg_pconnect(). -
query
-
The SQL statement or statements to be executed. When multiple statements are passed to the function, they are automatically executed as one transaction, unless there are explicit BEGIN/COMMIT commands included in the query string. However, using multiple transactions in one function call is not recommended.
WarningString interpolation of user-supplied data is extremely dangerous and is likely to lead to SQL injection vulnerabilities. In most cases pg_query_params() should be preferred, passing user-supplied values as parameters rather than substituting them into the query string.
Any user-supplied data substituted directly into a query string should be properly escaped.
Return Values
A query result resource on success or false
on failure.
Examples
Example #1 pg_query() example
<?php $conn = pg_pconnect("dbname=publisher"); if (!$conn) { echo "An error occurred.\n"; exit; } $result = pg_query($conn, "SELECT author, email FROM authors"); if (!$result) { echo "An error occurred.\n"; exit; } while ($row = pg_fetch_row($result)) { echo "Author: $row[0] E-mail: $row[1]"; echo "<br />\n"; } ?>
Example #2 Using pg_query() with multiple statements
<?php $conn = pg_pconnect("dbname=publisher"); // these statements will be executed as one transaction $query = "UPDATE authors SET author=UPPER(author) WHERE id=1;"; $query .= "UPDATE authors SET author=LOWER(author) WHERE id=2;"; $query .= "UPDATE authors SET author=NULL WHERE id=3;"; pg_query($conn, $query); ?>
See Also
- pg_connect() - Open a PostgreSQL connection
- pg_pconnect() - Open a persistent PostgreSQL connection
- pg_fetch_array() - Fetch a row as an array
- pg_fetch_object() - Fetch a row as an object
- pg_num_rows() - Returns the number of rows in a result
- pg_affected_rows() - Returns number of affected records (tuples)
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.pg-query.php