FuelPHPのデータベース絡み
FuelPHPでデータベースにクエリをなげるのが「クエリビルダ(Query Builder)」らしい。
以前、「.NET(Visual studio 2010)」でも同じような記述を見かけたけど「.NET」のほうは「エンティティフレームワーク(entity framework)と言われてたっぽいけどFuelPHPだと「クエリビルダ(Query Builder)」という表現になるらしい。
もちろん記述ルールは微妙に違う。ただともに
「select(○○○)->where(○○○)」的な感じ。
本気でクエリをヤルなら大変そう。
私的には見やすさ・メンテのやりやすさ重視なので複雑なクエリは作らないので基本的なクエリのみ。
クエリビルダも一応クエリをまるっと投げることはできる(DB::query(“select * from ○○○”)->execute())
ただインジェクション?…セキュリティ的によろしくないので分割する。
「DB::query(“select * from ○○○”)->execute()」は「DB::select()->from(“○○○”)->execute()」となる。
where句は面倒な感じ。「(a=○ and b=■) or (c=○ and d=△)」とかだと…「(a=○ and b=■)」が「where_open()->where(“a”, “○”)->and_where(“b”, “■”)->where_close()」、「or (c=○ and d=△)」が「or_where_open()->where(“c”, “○”)->and_where(“d”, “△”)->or_where_close()」となる。
wikiでまとめ中
FuelPHP・クエリビルダの基本クエリ