cubrid_bind

(PECL CUBRID >= 8.3.0)

cubrid_bindLie des valeurs à une requête préparée

Description

cubrid_bind(
    resource$req_identifier,
    int$bind_index,
    mixed$bind_value,
    string$bind_value_type = ?
): bool

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.

Types de données liées CUBRID
SupportType de liageType correspondant SQL
SupportéSTRINGCHAR, VARCHAR
 NCHARNCHAR, NVARCHAR
 BITBIT, VARBIT
 NUMERIC or NUMBERSHORT, INT, NUMERIC
 FLOATFLOAT
 DOUBLEDOUBLE
 TIMETIME
 DATEDATE
 TIMESTAMPTIMESTAMP
 OBJECTOBJECT
 ENUMENUM
 BLOBBLOB
 CLOBCLOB
 NULLNULL
Not supportedSETSET
 MULTISETMULTISET
 SEQUENCESEQUENCE

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

Cette fonction retourne true en cas de succès ou false si une erreur survient.

Historique

VersionDescription
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);
?>

L'exemple ci-dessus va afficher :

--- Dream Team (1992 United States men's Olympic basketball team) --- Stockton John Robinson David Pippen Scottie Mullin C. Malone Karl Laettner C. Jordan Michael Johnson Earvin Ewing Patrick Drexler Clyde Bird Larry Barkley Charles

Exemple #2 Exemple avec cubrid_bind() et les types 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 (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

To Top