cubrid_bind
(PECL CUBRID >= 8.3.0)
cubrid_bind — Lie des valeurs à une requête préparée
Description
$req_identifier
, int $bind_index
, mixed $bind_value
[, string $bind_value_type
] )
La fonction cubrid_bind() est utilisée pour lier
les valeurs à un marqueur correspondant, nommé ou non d'une requête SQL
qui a été passée à la fonction cubrid_prepare().
Si le paramètre bind_value_type
n'est pas fourni,
le type chaîne de caractères sera le type par défaut.
Note:
Si le type de données à lier est BLOB/CLOB, CUBRID tentera de lier les données comme un flux PHP. Si le type de la valeur à lier n'est pas un flux, CUBRID la convertira en chaîne, et l'utilisera comme chemin complet et nom de fichier sur le système de fichiers client.
Si le type de données à lier explicitement est ENUM, l'argument $bind_value doit être l'élément ENUM sous forme de chaîne de caractères.
En environnement partagé CUBRID, $bind_value_type doit être inclus dans la fonction cubrid_bind.
La liste suivante montre les types des valeurs substituées.
Support | Type de liage | Type correspondant SQL |
---|---|---|
Supporté | STRING | CHAR, VARCHAR |
NCHAR | NCHAR, NVARCHAR | |
BIT | BIT, VARBIT | |
NUMERIC or NUMBER | SHORT, INT, NUMERIC | |
FLOAT | FLOAT | |
DOUBLE | DOUBLE | |
TIME | TIME | |
DATE | DATE | |
TIMESTAMP | TIMESTAMP | |
OBJECT | OBJECT | |
ENUM | ENUM | |
BLOB | BLOB | |
CLOB | CLOB | |
NULL | NULL | |
Not supported | SET | SET |
MULTISET | MULTISET | |
SEQUENCE | SEQUENCE |
Liste de paramètres
-
req_identifier
-
Identifiant de requête, retourné par la fonction cubrid_prepare().
-
bind_index
-
Position des paramètres liés. Commence avec 1.
-
bind_value
-
Valeur actuelle à lier.
-
bind_value_type
-
Un type de valeur à lier (il est omis par défaut et en interne, le type chaîne de caractères sera utilisé. Cependant, vous devez spécifier le type exact de la valeur comme argument lorsque vous utilisez NCHAR, BIT, ou BLOB/CLOB).
Valeurs de retour
TRUE
, lorsque l'opération a été réalisée avec succès.
FALSE
, lorsque l'opération a échoué.
Historique
Version | Description |
---|---|
8.3.1 | Ajout du support des types BLOB/CLOB. |
Exemples
Exemple #1 Exemple avec cubrid_bind()
<?php $conn = cubrid_connect("localhost", 33000, "demodb", "dba"); $result = cubrid_execute($conn, "SELECT code FROM event WHERE sports='Basketball' and gender='M'"); $row = cubrid_fetch_array($result, CUBRID_ASSOC); $event_code = $row["code"]; cubrid_close_request($result); $game_req = cubrid_prepare($conn, "SELECT athlete_code FROM game WHERE host_year=1992 and event_code=? and nation_code='USA'"); cubrid_bind($game_req, 1, $event_code, "number"); cubrid_execute($game_req); printf("--- Dream Team (1992 United States men's Olympic basketball team) ---\n"); while ($athlete_code = cubrid_fetch_array($game_req, CUBRID_NUM)) { $athlete_req = cubrid_prepare($conn, "SELECT name FROM athlete WHERE code=? AND nation_code='USA' AND event='Basketball' AND gender='M'"); cubrid_bind($athlete_req, 1, $athlete_code[0], "number"); cubrid_execute($athlete_req); $row = cubrid_fetch_assoc($athlete_req); printf("%s\n", $row["name"]); } cubrid_close_request($game_req); cubrid_close_request($athlete_req); cubrid_disconnect($conn); ?>
<?php
$con = cubrid_connect("localhost", 33000, "demodb", "dba", "");
if ($con) {
cubrid_execute($con,"DROP TABLE if exists php_cubrid_lob_test");
cubrid_execute($con,"CREATE TABLE php_cubrid_lob_test (doc_content CLOB)");
$sql = "INSERT INTO php_cubrid_lob_test(doc_content) VALUES(?)";
$req = cubrid_prepare($con, $sql);
$fp = fopen("book.txt", "rb");
cubrid_bind($req, 1, $fp, "clob");
cubrid_execute($req);
}
?>
Exemple #3 Exemple avec cubrid_bind() et BLOB/CLOB
<?php $con = cubrid_connect("localhost", 33000, "demodb", "dba", ""); if ($con) { cubrid_execute($con,"DROP TABLE if exists php_cubrid_lob_test"); cubrid_execute($con,"CREATE TABLE php_cubrid_lob_test (image BLOB)"); $sql = "INSERT INTO php_cubrid_lob_test(image) VALUES(?)"; $req = cubrid_prepare($con, $sql); cubrid_bind($req, 1, "cubrid_logo.png", "blob"); cubrid_execute($req); } ?>
Voir aussi
- cubrid_execute() - Exécute une requête SQL préparée
- cubrid_prepare() - Prépare une requête SQL pour son exécution