概要 Slick 3 になって、DB操作を非同期に行えるようになった。 Slick 2 までは同期的であったため、複数クエリが関わる操作も「なんとなく」書けていたが、非同期で flatMap (for - yield) を使って書いていると、ちょっとややこしくなってくる。 その理由は、 2つのモナドがある ということだけなのだが、この2つがごっちゃになっていると訳が分からなくなる。 また、簡単なクエリを組み立てるだけのコードはぐぐればいくらでも出てくるが、「ちょっと複雑な」DB処理はあまり出てこない。 そこで、この2つのモナドについて解説しつつ、「ちょっと複雑な」DB処理をいくつか紹介する。 対象読者 Scala の flatMap とか for - yield 文を使うことができる。 RDB の基礎は押さえている Slick 3.1 で簡単な CRUD は書けるけど、複雑なのは難しい サ
![Slick 3 でちょっと複雑なDB処理を組み立てる - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/cbc1f0f7d57c0fbd7dc87d81bc07542c36a83eff/height=288;version=1;width=512/https%3A%2F%2Fcdn.qiita.com%2Fassets%2Fqiita-fb-2887e7b4aad86fd8c25cea84846f2236.png)