MySQL 5.1 リファレンスマニュアル :: 23 APIとライブラリー :: 23.2 MySQL C API :: 23.2.4 準備されたC APIステートメント。
« 23.2.3.72 mysql_warning_count()

23.2.5 準備されたC APIステートメントデータタイプ »
Section Navigation      [Toggle]
  • 23.2 MySQL C API
  • 23.2.1 C APIデータタイプ
  • 23.2.2 C API機能の概要。
  • 23.2.3 C API機能の説明
  • 23.2.4 準備されたC APIステートメント。
  • 23.2.5 準備されたC APIステートメントデータタイプ
  • 23.2.6 準備されたC APIステートメント機能の概要
  • 23.2.7 準備されたC APIステートメント機能の詳細
  • 23.2.8 準備されたC API ステートメントの問題
  • 23.2.9 マルチプルステートメントを実行するC APIハンドリング
  • 23.2.10 日付とタイム値のC API式取り扱い
  • 23.2.11 C APIスレッド機能の説明
  • 23.2.12 埋め込まれたC API機能の説明
  • 23.2.13 自動再接続挙動の管理
  • 23.2.14 C APIを使うときよく尋ねられる質問と問題
  • 23.2.15 クライアントプログラムの構築
  • 23.2.16 スレッド付きクライアントを作る方法

23.2.4. 準備されたC APIステートメント。

MySQLクライアント/サーバ・プロトコルは準備されたステートメントの使用を規定します。この能力には、mysql_stmt_init()初期化機能によって戻されたMYSQL_STMTステートメントハンドラー・データ構造が使われています。準備された実行は1回以上ステートメントを実行する効率的な方法です。ステートメントはその実行のために最初解析されます。その後、それは初期化機能によって戻されたシテートメントハンドルを使って複数回実行されます。

準備された実行は、基本的にクエリの解析が一度だけなので、一度以上実行されるステートメントの実行を、直接実行するより素早く行います。直接実行の場合、クエリは実行のたびに解析されます。準備された実行はまた、実行のたびにパラメータにデータを送るだけで済むので、ネットワークの通信料を減らす効果があります。

準備されたステートメントは状況によっては、性能の増加をもたらさない場合があります。最も良い結果を得るため、準備されたステートメントと準備されていないステートメントの両方を使って、自分のアプリプリケーションをテストして、最もよい性能が得られる方を選んでください。

プリペアド ステートメントの他の利点は、クライアントとサーバ間のデータ伝達をより効果的にするバイナリ プロトコルを使用していることです。

次のステートメントは準備されたステートメントとして用いることができます:CREATE TABLEステートメント、DELETEステートメント、DOステートメント、INSERTステートメント、REPLACEステートメント、SELECTステートメント、SETステートメント、UPDATE並びに殆どのSHOWステートメント。

MySQL 5.1.10では、次のステートメントがサポートされています:

ANALYZE TABLE
OPTIMIZE TABLE
REPAIR TABLE

MySQL 5.1.12では、次のステートメントがサポートされています:

CACHE INDEX
CHANGE MASTER
CHECKSUM {TABLE | TABLES}
{CREATE | RENAME | DROP} DATABASE
{CREATE | RENAME | DROP} USER
FLUSH {TABLE | TABLES | TABLES WITH READ LOCK | HOSTS | PRIVILEGES
  | LOGS | STATUS | MASTER | SLAVE | DES_KEY_FILE | USER_RESOURCES}
GRANT
REVOKE
KILL
LOAD INDEX INTO CACHE
RESET {MASTER | SLAVE | QUERY CACHE}
SHOW BINLOG EVENTS
SHOW CREATE {PROCEDURE | FUNCTION | EVENT | TABLE | VIEW}
SHOW {AUTHORS | CONTRIBUTORS | WARNINGS | ERRORS}
SHOW {MASTER | BINARY} LOGS
SHOW {MASTER | SLAVE} STATUS
SLAVE {START | STOP}
INSTALL PLUGIN
UNINSTALL PLUGIN

他のステートメントはMySQL 5.1にサポートされていません。

Copyright © 1997, 2010, Oracle and/or its affiliates. All rights reserved. Legal Notices
Top / Previous / Next / Up / Table of Contents
© 2010, Oracle Corporation and/or its affiliates