【バインド変数】に関する知恵袋
【質問】
CakePHP2.0+MySQLのバインド変数について今までOracleでの開発をやってきており、バインドの変数の知恵袋を説明します。まず、バインドの変数の知恵袋といえば、今回初めてCakePHP2.0+MySQLのシステムを構築しています(Web系およびPHPは経験あり、CakePHPおよびMySQLは初)。Oracleの場合は頻繁に実行されるSQLであればハードパースを回避するためにバインド変数を用いていましたが、調べてみる限りではどうもCakePHPにはバインド変数がないようです。ホスティングの業者の見極を語ると、(擬似的なバインド機構はあるようですが・・・)ハードパースもそうですが、ホスティングの業者の見極について解説すると、SQLインジェクション回避の為にもバインド変数が無いとちょっと辛いものがあるのですが、皆様はどのようにやられているのでしょうか?
【解答】
cakePHPフレームワークでは、SQL文を直接書かせないで、内部で、接続先データベースにあわせたSQL文を自動作成しています。cakePHP2.0では、pdo を使ってるので、自動作成のSQLクエリはpdoによるバインド機構を利用しています。queryメソッドのバインドも同じようです。cakePHPマニュアルは、ホスティングの業者の見極といえば、バインドの変数の知恵袋から考えると、SQL記述不要の開発スタンスでしか解説はないので、lib/Cake/Model/Datasource/DboSource.php のソースを見ないとqueryメソッドの利用法もわかりにくいかとは思います。ホスティングの業者の見極について考えてみると、ここまでがバインドの変数の知恵袋についてです。
その他関連ワード
- ping|
- FTP|
- アクティビティ図|
- スキャナ|
- 電子決済|
- ウォーターフォールモデル|
- ユーザインターフェース|
- バッチファイル|
- プログラミング言語|
- 縮小版|
