Screaming Loud

日々是精進

slick

slickのcase classをつくるのがめんどくさかったので、スクリプトで作った

slickのcase classをつくるのがめんどかったので、SQLを投げればcase classとTableを生成するスクリプト作りました。 (すでにslick-code-generatorとかある。車輪の再発明。。) Schema code generation — Slick 2.0.0-RC1 documentation 作った経緯として…

slickにおける動的にwhere句を作る

Slickにおける動的where句の作り方 現在最新は3系ですが環境としては、Slick2.1での書き方での紹介です。 Documentation | SlickSlickにおいて動的にwhere句を作るのは、案外Scalaを始めたばかりだとうまくいきません。以下の様なクラスに対して複数の検索を…

Slickで複数のDBスキーマのトランザクションを行う

Slickでのトランザクション Slickでトランザクション処理を行うとすれば、公式のドキュメントに載っているように以下の様な処理を書けば良いと思います。 db.withTransaction{ implicit session => // your queries go here } 一般的にDB間をまたいでトラン…

初めてのLTの発表@実戦でのScala

人生で初めてLT発表をしてきました。今まで、研究室や社内の勉強会では積極的に発表はしていたのですが、 いざ外部となると、ものすごく緊張しました。やはり、社内などの小さいコミュニティであれば、 聴講者のレベル感などがだいたいわかるので、それに合…

slickでコネクションプーリング

slickでコネクションプーリングを使おうとしても、slick自体ではサポートしていない。 Connections / Transactions — Slick 2.0.0-M3 documentationそこで、リンク先にも書いてあるように、Javaの資産であるコネクションプーリング用ライブラリが必要になる…

slickのupdateで動的にクエリを作れなくてハマった

slickでは、SQLを書かずにクエリを投げられます。その書き方に関しては、 Coming from SQL to Slick — Slick 2.1.0 documentationに書いてあります。ただ、少し違ったことをしようとするとなかなか実現できません。 今回実現しようとしていたこと update文で…

slickのcode generatorをmysqlで動かしてみた

slickのcode generatorを使ってみました。code generatorとは、DBの接続するscalaファイルをsbtコマンドを使うことで作成してくれるものです。slick/slick-codegen-example slick/slick-codegen-example · GitHub では、H2Driverを使っての例なため、MySQLDr…