今日も微速転進

ここではないどこかへ

今週のふりかえり(2017年10月第2週)


スポンサーリンク

週明けから風邪っぽかったのと、週末の天気がいまいちだった関係で微妙な一週間だった気がします。

もう今月も半分過ぎているなんて……。

今週の学び

地味だけど備忘録として記録しておくとド忘れした時に役に立つ。

ソフトウェア開発関連

CakePHP3 とSQLでCase式

CakePHP3 でデータベースからデータと取得する際の話。

SQL でCASE式を使いたいが、CakePHP3 で思い通りにSQLが生成されなくて少しハマった。

生成されるSQLにCASE文のELSE 節が生成されない時はaddCase()の引数を確認する。

orm - Cakephp 3.0 - Query builder for case statements - Stack Overflow

addCase( 
  [ $query->newExpr()->add( [ 条件式の連想配列 ] ) ],
  [ 値の配列 ],
  [ 値の型の配列 ]
 )

第一引数を配列にしないとCASE WHEN 条件式 THEN 値 ELSE 〜ELSE節が生成されない。

CakePHP3 とエラーハンドリング

try-catch で例外を捕捉してくれないと思ったら名前空間の問題らしい。

解決策はシンプルで、例外処理をするソースファイルの先頭あたりに下記のようにしてuse名前空間の利用を明示する。もしくは例外の型名をフルパスで表記する。

use Cake\Network\Exception\NotFoundException;

結構便利だけど地味にハマるよね、CakePHP。 

読んだ本

未読の本と読みかけの本が増殖していて抜本的な対策が必要。

SQL 第2版 ゼロからはじめるデータベース操作

久々にWeb案件というかDBがらみの仕事をする羽目になったのでSQLの復習のために。

SQL 第2版 ゼロからはじめるデータベース操作

SQL 第2版 ゼロからはじめるデータベース操作

ゼロから始める……異世界生活ではなくて、RDBの基本操作の本。

Kindle版のセール(ほぼ1年前の)で購入して放置していた本。今まで見よう見まねでWebアプリ関連の仕事をしていたのでリハビリついでに勉強し直しておこうという目論見。

出版社のサイトでもPDF版が購入可能。

標準的なSQLの書き方を各種DBごとの方言についての注意事項も含めて学べる良書。確保しておいて良かった。
使わない知識はきれいに忘れていたり、入門的な内容なのに使ったことのない機能があったり読んだ甲斐がありました。

第9章がJava 経由の話だがJava は無関係なのでスキップ。

本文の解説どおりにサンプルデータをDBに放り込んで、本文に解説されているSQLを打ち込んでいけば自然と基本は身につくはず。

SQL未経験者および付け焼き刃でSQLを使っているけど自信がない方にちょうどいいと思う。ただ、いわゆる黒い画面が嫌いだとちょっとつらいかも。

非常に読みやすく、ページ数も手頃なのでおすすめです。

高度なチューニングの話とかテーブル設計の話は出てこないですが、そういうのはWeb+DB Press とかSoftware Design のDB特集を読めばいいと思う。もしくはがっつりRDBMSの解説書か。

ちょうどSoftware Designの2017年11月号がSQL特集らしいので。

Amazon ビデオ

レビューどおりにいいところで終わる……。

ラストの某赤いモビルスーツパイロットのセリフはシビれる。

1,000円で視聴開始から48時間のレンタルってどうなの?という気はするが映画見にくより交通費も含めたら断然お得。少なくとも今の耳の状態を考えるとイヤホンの方がよく聞こえるので。

その他・ノウハウなど

特になし。

購入したもの

できるだけ必要なものを買うようにしたいけど。

鉄アレイ

ALINCO(アルインコ) ノンスリップダンベル 3.0kg WB304

ALINCO(アルインコ) ノンスリップダンベル 3.0kg WB304

この前購入した筋トレ本のDVDのメニューをこなすために購入。

続けられるかどうか心配だったので本だけ先に購入していた。

残念ながら2個セットとかではないので、同じものを2個購入。

積みプラ

迷っているうちに一時的に品切れになっていたので再入荷時点で確保。

Amazonは油断すると価格変動があるのが辛いところ。

アウトプット

失敗云々について個人的な見解を記事にしたぐらい。

今週の気づき&まとめ

それにしてもSQLの構文、使わないとすぐ忘れる……。

約一年前に 購入した本を今更とはいえ読み切ったのは感慨深いものがあります。


風邪による頭痛と、SQLやらPHP(CakePHP3)と格闘していいるうちに1週間過ぎてしまった感じ。

今週はプラモの組み立てとか積み残し作業を進める予定。

それではでは。

広告