8.103 PostgreSQL
8 Référence des fonctions
Manuel PHP
. Introduction . Pré-requis . Installation . Configuration à l'exécution . Types de ressources . Constantes pré-définies . Notes . Exemples . pg_affected_rows . pg_cancel_query . pg_client_encoding . pg_close . pg_connect . pg_connection_busy . pg_connection_reset . pg_connection_status . pg_convert . pg_copy_from . pg_copy_to . pg_dbname . pg_delete . pg_end_copy . pg_escape_bytea . pg_escape_string . pg_execute . pg_fetch_all_columns . pg_fetch_all . pg_fetch_array . pg_fetch_assoc . pg_fetch_object . pg_fetch_result . pg_fetch_row . pg_field_is_null . pg_field_name . pg_field_num . pg_field_prtlen . pg_field_size . pg_field_type_oid . pg_field_type . pg_free_result . pg_get_notify . pg_get_pid . pg_get_result . pg_host . pg_insert . pg_last_error . pg_last_notice . pg_last_oid . pg_lo_close . pg_lo_create . pg_lo_export . pg_lo_import . pg_lo_open . pg_lo_read_all . pg_lo_read . pg_lo_seek . pg_lo_tell . pg_lo_unlink . pg_lo_write . pg_meta_data . pg_num_fields . pg_num_rows . pg_options . pg_parameter_status . pg_pconnect . pg_ping . pg_port . pg_prepare . pg_put_line ->pg_query_params . pg_query . pg_result_error_field . pg_result_error . pg_result_seek . pg_result_status . pg_select . pg_send_execute . pg_send_prepare . pg_send_query_params . pg_send_query . pg_set_client_encoding . pg_set_error_verbosity . pg_trace . pg_transaction_status . pg_tty . pg_unescape_bytea . pg_untrace . pg_update . pg_version
|
8.103.70 pg_query_params()
Envoie une commande au serveur et attend le résultat, avec les capacités de
passer des paramètres séparément de la commande texte SQL
[ Exemples avec pg_query_params ] PHP 5 >= 5.1.0RC1
resource
pg_query_params (
resource
connection
,
string
query
,
array
params
)
resource
pg_query_params (
string
query
,
array
params
)
Envoie une commande au serveur et attend le résultat, avec les capacités de
passer des paramètres séparément de la commande texte SQL.
pg_query_params
est comme
pg_query
,
mais offre des fonctionnalités additionnelles : les valeurs des paramètres
peuvent être spécifiées séparément de la ligne de commande propre.
pg_query_params
est supportée seulement avec les versions
PostgreSQL 7.4 ou plus récentes; la commande échouera si vous l'utilisez
avec des versions antérieures.
Si des paramètres sont utilisés, ils sont référés à $1, $2, etc. dans
query
.
params
spécifie les
valeurs actuelles des paramètres. Une valeur
NULL
dans ce tableau
signifie que le paramètre correspondant est SQL
NULL
.
Le principal avantage de
pg_query_params
sur
pg_query
est que les valeurs des paramètres peuvent
être séparées de la requête
query
, par conséquent,
on invite les échappements de caractères ennuyeux et source d'erreurs.
Contrairement à
pg_query
,
pg_query_params
permet seulement une seule commande
SQL dans la chaîne donnée. (Il peut y avoir des points-virgules à
l'intérieur mais pas plus d'une seule commande.)
-
connection
-
La ressource de connexion de la base de données PostgreSQL. Lorsque
connection
n'est pas présent, la connexion par
défaut est utilisée. La connexion par défaut est la dernière connexion
faite par
pg_connect
ou
pg_pconnect
.
-
query
-
La requête SQL paramétrisée. Elle doit contenir seulement une seule
requête. (Plusieurs requêtes séparées par des points-virgules ne sont
pas autorisées.) Si des paramètres sont utilisés, ils sont référés à
$1, $2, etc.
-
params
-
Un tableau de valeurs de paramètres pour substituer les variables $1, $2, etc.
dans la requête préparée originale. Le nombre d'éléments présents dans
le tableau doit concorder avec le nombre de variables à remplacer.
Une ressource de résultats en cas de succès ou
FALSE
en cas d'échec.
| Using pg_query_params |
<?php // Connexion à une base de données nommée "marie" $dbconn = pg_connect("dbname=marie");
// Cherche tous les magasins nommés Joe's Widgets. Notez qu'il n'est pas // nécessaire d'échapper la chaîne "Joe's Widgets" $result = pg_query_params($dbconn, 'SELECT * FROM magasins WHERE nom = $1', array("Joe's Widgets"));
// Compare en utilisant pg_query $str = pg_escape_string("Joe's Widgets"); $result = pg_query($dbconn, "SELECT * FROM magasins WHERE nom = '{$str}'");
?>
|
|