skillup

技術ブログ

Database PHP

cakePHPでの直SQL

投稿日:2016年6月13日 更新日:

今回はCakePHPにて直のSQLを書く方法を。

cakePHPにて大概の処理はもともと備わっているコマンドでなんとかなりますが、まれに直SQLを書いたほうがらくなこともあります。

書き方その1

queryというメソッドにSQLを投げ込めばOKです。ほんとにそのまんま・・・この場合はテーブル名もcakeを使うときのモデル名ではなく純粋なテーブルを使ってOKです。

ただ、この方法だとエスケープをしてくれないのでやや危険です。自分でいちいちやるのは面倒でしょう。

そこで次の書き方がおすすめです。

書き方その2

プリペアードステイトメントですね。この方法であればSQLインジェクション対策が施されているのでお勧めです。

直にSQLを書きたい方は参考までに・・・

【CakePHP】SQLが頭に浮かぶなら迷わずqueryメソッドを使おう

-Database, PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Laravel5.4インストール&ルーティング

来月からの仕事でLaravel5.4を使うことになったのでテストがてら自宅で勉強。 とりあえず下記リンクが参考になりました。 Laravel5.4でシンプルなCMSを作るチュートリアル 初めてのLar …

no image

データベースによるテストデータ作成

テスト環境を作る際に、テストデータを作るのが面倒・・・なんかライブラリでもないかな・・と思っていたんですが、MySQLでいろいろと簡単にできます。 数字 [crayon-60767ebe4524c03 …

no image

JPAでの多対多のリレーション

以前、このエントリーでJPAのリレーションについて説明しました。 今回は多対多について説明します。 Contents1 テーブル構成2 ソース2.1 CDのエンティティ2.2 Artistのエンティテ …

no image

MySQL.sockファイルに関して

朝出社してテストサーバーを見るといきなりサーバーが動いていないという事態が発生。 MySQLを起動しようとすると

なるメッセージがでて …

no image

CakePHP3 日付ライブラリ(Time)について

CakePHPには標準でいろいろなライブラリが入っていますが、日付ではCake\I18n\Timeというライブラリが入っています。 内部では3.2より前のバージョンではCarbonだったようですが、そ …