| ||||||||||||
| 前のページ 1 2 | ||||||||||||
| プリペアドクエリとバインド変数(3) | ||||||||||||
結果は表2のようになりました(realは総処理時間、userはユーザーCPU時間、sysはシステムCPU時間)。少々ですが、実行効率の向上が確認できます。 | ||||||||||||
| 表2:プリペアドクエリとバインド変数の有無による性能評価 | ||||||||||||
| ||||||||||||
| トランザクション | ||||||||||||
MySQL 4.1.2は既定でInnoDBをサポートしており、トランザクション処理が可能です。これに伴い、改良版MySQL拡張サポートでもトランザクション処理の制御ができます(リスト9)。 | ||||||||||||
| リスト9:transaction.php | ||||||||||||
<? | ||||||||||||
当然ですが、制御できるのはテーブルの型がInnoDBである場合に限ります。テーブルの型をInnoDBにしたい場合は、テーブルを作成するCREATE文の一番最後に「TYPE = InnoDB」を付けます。 トランザクション処理を破棄したい場合はrollback()メソッド、逆に確定したい場合はcommit()メソッドをそれぞれ利用します。autocommit()メソッドを使うと、自動コミットの有効・無効を定義できます。自動コミットを有効にすると、エラーが発生しない限り、実行した時点でトランザクション処理が確定します。 | ||||||||||||
| 前のページ 1 2 | ||||||||||||
| ||||||||||||
| ||||||||||||

