関数・クラス解説

ingres_query

version:PHP 4 >= 4.0.2, PHP 5 < 5.1.0, P (公式)

Ingres に SQL クエリを送信する

公式リファレンス

書式

ingres_query ( resource $link , string $query [, array $params [, string $types ]] ) : mixed

説明

ingres_query() は、指定した query を Ingres サーバーに送信します。

クエリは、現在オープンされているトランザクションの一部となります。 オープンされているトランザクションがない場合、 ingres_query() は新規のトランザクションをオープンします。 トランザクションをクローズするには、データベースへの変更をコミットする場合に ingres_commit() を、 これらの変更をキャンセルする場合に ingres_rollback() のどちらかを使用することが可能です。 スクリプト終了時に、全てのオープンされたトランザクションは (ingres_rollback() をコールすることにより) ロールバックされます。新規トランザクションをオープンする前に ingres_autocommit() を使用することも可能です。 この場合、各 SQL クエリは直ちにコミットされます。

注意: 関連する設定項目

実行時設定 での ingres.describe、 ingres.scrollable および ingres.utf8 の説明も参照ください。

パラメータ

link
接続リンク ID。
query
有効な SQL クエリ (Ingres ドキュメントにある Ingres SQL リファレンスガイド を参照ください)。 クエリ内のデータは 適切にエスケープ しておかなければなりません。 次の型の SQL クエリは、この関数で送信できません。
  • close (ingres_close() を参照)
  • commit (ingres_commit() を参照)
  • connect (ingres_connect() を参照)
  • disconnect (ingres_close() を参照)
  • get dbevent
  • prepare to commit
  • rollback (ingres_rollback() を参照)
  • savepoint
  • set autocommit (ingres_autocommit() を参照)
  • カーソルに関係するクエリはサポートされていません
params
クエリで使用するパラメータの値の配列。
types
渡されたパラメータの値の型を含む文字列。 ingres.describe が有効な場合は このパラメータは無視され、サーバーが期待している型をドライバが自動的に取得します。
型コード Ingres の型
a BOOLEAN
b BYTE
B LONG BYTE/BLOB
c CHAR
d DATE/ANSIDATE/TIMESTAMP/TIME
f FLOAT
i INTEGER
L LONG TEXT
m MONEY
M LONG NVARCHAR
n NCHAR
N NVARCHAR
t TEXT
v VARCHAR
V LONG VARCHAR

返値

ingres_query() は、 成功した場合にクエリ結果 ID、それ以外の場合に FALSE を返します。 エラーが発生したかどうかを知るには ingres_errno()、 ingres_error() あるいは ingres_errsqlstate() を使用します。

サンプル

例1 単純な select の送信

$link = ingres_connect("demodb"); $result = ingres_query($link, "select * from user_profile"); while ($row = ingres_fetch_row($result)) {     echo $row[1];     echo $row[2]; }

例2 ingres_query() へクエリパラメータを渡す

$link = ingres_connect("demodb"); $params[] = "Emma"; $query = "select * from user_profile where up_first = ?"; $result = ingres_query($link, $query, $params); while ($row = ingres_fetch_row($result)) {     echo $row[1];     echo $row[2]; }

例3 パラメータの型を指定した BLOB の挿入

$link = ingres_connect("demodb"); // 写真をオープンします $fh = fopen("photo.jpg","r"); $blob_data = stream_get_contents($fh); fclose($fh); // パラメータを準備します $params[] = $blob_data; $params[] = 1201; // パラメータの型を定義します $param_types = "Bi"; $query = "update user_profile set up_image = ? where up_id = ?"; $result = ingres_query($link, $query , $params, $param_types); if (ingres_errno()) {     echo ingres_errno() . "-" . ingres_error() . "\n"; } ingres_commit($link); ingres_close($link);

参考

  • ingres_unbuffered_query() - 未バッファ SQL クエリを Ingres に送信する
  • ingres_fetch_array() - 1 行分の結果を配列に取得する
  • ingres_fetch_assoc() - 1 行分の結果を連想配列に取得する
  • ingres_fetch_object() - 1 行分の結果をオブジェクトとして取得する
  • ingres_fetch_row() - 1 行分の結果を数値添字配列として取得する
  • ingres_commit() - トランザクションをコミットする
  • ingres_rollback() - トランザクションをロールバックする
  • ingres_autocommit() - autocommit をオンまたはオフに切替える
  • ingres_set_environment() - 環境を設定して出力オプションを制御する
  • ingres_errno() - 直近に発生した ingres エラー番号を取得する
  • ingres_error() - 直近に発生したエラーのエラーメッセージを取得する
  • ワード検索


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

    関数名アルファベット別

    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用の拡張モジュール