ScalikeJDBC VS treelog

Compare ScalikeJDBC vs treelog and see what are their differences.

ScalikeJDBC

A tidy SQL-based DB access library for Scala developers. This library naturally wraps JDBC APIs and provides you easy-to-use APIs. (by scalikejdbc)

treelog

Allows logging in a tree structure so that comprehensive logging does not become incomprehensible (by lancewalton)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
ScalikeJDBC treelog
4 1
1,253 219
0.2% -
8.9 7.7
7 days ago 8 days ago
Scala Scala
Apache License 2.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

ScalikeJDBC

Posts with mentions or reviews of ScalikeJDBC. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-02-24.
  • Query DSL in Scala 3
    2 projects | /r/scala | 24 Feb 2021
  • From First Principles: Why Scala?
    11 projects | news.ycombinator.com | 11 Feb 2021
    I have had poor experiences with "fancy" SQL libraries in multiple languages when I go past basic operations. This includes Slick and Quill in Scala.

    I don't remember what the problems were with Slick that leave such a bad feeling when I hear its name -- that was 5 years ago -- but I had problems with Quill just last year. I was trying to use it to generate an efficient "in" query against a two column composite primary key, and nothing seemed to work. Since it uses macro magic, one of my attempts triggered an internal compiler error instead of normal compiler feedback.

    I ended up dropping Quill for ScalikeJDBC:

    http://scalikejdbc.org/

    It seems to be less popular/active than other libraries, but it is dead simple to use, even for developers new to Scala. I write exactly the SQL I want just like I would in psql. There is little-to-no magic [1]. I think that the only slightly magical feature I use is ensure that variable interpolation into SQL ("SQLInterpolation") prevents injection attacks.

    [1] It actually has capabilities to automatically map tables/columns into different structures and generate code for you, but my team doesn't use any of that. We just write SQL.

treelog

Posts with mentions or reviews of treelog. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2021-02-11.
  • From First Principles: Why Scala?
    11 projects | news.ycombinator.com | 11 Feb 2021
    The call stack is "magic" built into the language, so as soon as you're not using the "blessed" way of error handling, you lose it and need to rebuild the same functionality "by hand".

    I agree that some kind of logical call stack is a very useful thing to have, and I'd recommend implementing something along the lines of https://github.com/lancewalton/treelog that provides it.

What are some alternatives?

When comparing ScalikeJDBC and treelog you can also consider the following projects:

Slick - Slick (Scala Language Integrated Connection Kit) is a modern database query and access library for Scala

doobie - Functional JDBC layer for Scala.

Quill - Compile-time Language Integrated Queries for Scala

Anorm - The Anorm database library

Squeryl - A Scala DSL for talking with databases with minimum verbosity and maximum type safety

Relate - Performant database access in Scala

AnormCypher - Neo4j Scala library based on Anorm in the Play Framework

PostgreSQL and MySQL async

Clickhouse-scala-client - Clickhouse Scala Client with Reactive Streams support

kotlin-spark-api - This projects gives Kotlin bindings and several extensions for Apache Spark. We are looking to have this as a part of Apache Spark 3.x

Casbah - Casbah is now officially end-of-life (EOL).

Scala-Forklift - Type-safe data migration tool for Slick, Git and beyond.