Slick is a Scala library for working with relational databases. That means it allows you
to model a schema, run queries, insert data, and update data.
Using Slick, you can write queries in Scala, giving you typed-checked database access.
The style of queries makes working with a database similar to working with regular
Scala collections.
We’ve seen that developers using Slick for the first time often need help geting the
most from it. For example, you need to know a few key concepts, such as:
• queries: which compose using combinators such as map, flatMap, and filter;
• actions: the things you can run against a database, which themselves compose;
and
• futures: which are the result of actions, and also support a set of combinators.
We’ve produced Essential Slick as a guide for those who want to get started using Slick.
This material is aimed at beginner-to-intermediate Scala developers. You need:
• a working knowledge of Scala (we recommend Essential Scala or an equivalent
book);
• experience with relational databases (familiarity with concepts such as rows,
columns, joins, indexes, SQL);
• an installed JDK 8 or later, along with a programmer’s text editor or IDE; and
• the sbt build tool.
The material presented focuses on Slick version 3.3. Examples use H2 as the relaঞonal
database.