関数・クラス解説

cubrid_bind

version:PECL CUBRID >= 8.3.0 (公式)

Bind variables to a prepared statement as parameters

公式リファレンス

書式

cubrid_bind ( resource $req_identifier , int $bind_index , mixed $bind_value [, string $bind_value_type ] ) : bool

説明

The cubrid_bind() function is used to bind values to a corresponding named or question mark placeholder in the SQL statement that was passed to cubrid_prepare(). If bind_value_type is not given, string will be the default.

注意:

If the type of data to be bound is BLOB/CLOB, CUBRID will try to map the data as a PHP stream. If the actually bind value type is not stream, CUBRID will convert it to string, and use it as the full path and file name of a file on the client filesystem.

If the type of data to be bound explicitly is ENUM, the $bind_value argument should be the enum element which is in string format.

In CUBRID shard envrioment, the $bind_value_type must be included in the cubrid_bind function.

The following table shows the types of substitute values.

CUBRID Bind Date Types
Support Bind Type Corresponding SQL Type
Supported 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

パラメータ

req_identifier
Request identifier as a result of cubrid_prepare().
bind_index
Location of binding parameters. It starts with 1.
bind_value
Actual value for binding.
bind_value_type
A type of the value to bind. (It is omitted by default. Thus, the system internally uses string by default. However, you need to specify the exact type of the value as an argument when they are NCHAR, BIT, or BLOB/CLOB).

返値

TRUE, when process is successful. FALSE, when process is unsuccessful.

更新履歴

バージョン 説明
8.3.1 Added BLOB/CLOB data types support.

サンプル

例1 cubrid_bind() example

$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);

上の例の出力は以下となります。

--- 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

例2 cubrid_bind() BLOB/CLOB example

$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);   }

例3 cubrid_bind() BLOB/CLOB example

$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);   }

参考

  • cubrid_execute() - Execute a prepared SQL statement
  • cubrid_prepare() - Prepare a SQL statement for execution
  • ワード検索


    ※入力キーワードが、関数名・説明文・タグに含まれるものを検索

    関数名アルファベット別

    A B C D E F G H I J
    K L M N O P Q R S T
    U V W X Y Z _

    最終更新一覧

    stristr
     大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

    stripslashes
     バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

    stripos
     大文字小文字を区別せずに文字列が最初に現れる位置を取得する

    stripcslashes
     addcslashes() でクォートされた文字列をアンクォートする

    strip_tags
     文字列から HTML と PHP のタグを除去して返却

    strcspn
     指定した文字が最初に現れる位置を調べる

    strcoll
     ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

    strcmp
     2つの文字列を比較し同じか(あるいは大小)を判定する

    strchr
     strstr() のエイリアス

    strcasecmp
     2つの文字列を比較(大文字小文字を区別せず同じとみなす)

    カテゴリー一覧

    PHP の振る舞いの変更
    音声フォーマットの操作
    認証サービス
    コマンドライン関連
    圧縮およびアーカイブ
    暗号
    データベース関連
    日付および時刻関連
    ファイルシステム
    自然言語および文字エンコーディング
    画像処理および作成
    メール関連
    数学
    テキスト以外の MIME 型
    プロセス制御
    その他の基本モジュール
    その他のサービス
    検索エンジン用の拡張モジュール
    サーバー固有のモジュール
    セッション関連
    テキスト処理
    変数・データ型関連
    ウェブサービス
    Windows 用のモジュール
    XML 操作
    GUI用の拡張モジュール