MySQL 4.1
では、プリペアドステートメントを使用するためのクライアント/サーバプロトコルが提供されています。この機能は、MYSQL_STMT
ステートメントハンドラデータ構造体を使用します。プリペアドステートメントの実行は、ステートメントを繰り返し実行する場合に効率的な方法です。ステートメントは、実行する準備を整えるために、まず解析されます。その後、prepare
関数から返されるステートメントハンドルを使用して、1
回以上実行されます。
プリペアドステートメントの実行は、解析が 1 回しか行われないため、ステートメントを直接複数回実行するよりも高速です。ステートメントを直接実行した場合、そのたびにクエリの解析が行われます。プリペアドステートメントを実行する場合、ネットワークトラフィックも、パラメータとしてデータを送信するときに発生するだけなので、削減できます。
その他にも、プリペアドステートメントの実行ではバイナリプロトコルを使用するので、クライアントおよびサーバ間のデータ転送の効率が向上するという利点があります。プリペアドステートメントは、複数クエリを実行する際の入力および出力のバインディングもサポートします。
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.