Boost logo

Boost :

From: Vinnie Falco (vinnie.falco_at_[hidden])
Date: 2024-03-23 11:49:28


On Fri, Mar 22, 2024 at 10:51 PM Daniela Engert via Boost <
boost_at_[hidden]> wrote:

> I wouldn't characterise that as 'unreasonable' - others obviously feel
> the same. Because of that, a library with such capabilities that already
> exists: https://github.com/rbock/sqlpp11.
>

That is a beautiful library but I still maintain that the original request,
type-safe SQL strings (and constexpr at that) is unreasonable.

The library you linked does not use SQL strings at all, it has its own
EDSL. It is not actually SQL (which represents database queries using a
string) but rather "sql-flavored" C++ API. Julien wanted this:

    prepare("insert into author (first_name, last_name) values (?1, ?2),
(?3, ?4), (?5, ?6), (?7, ?8)");

to be type-safe. Doing so would require parsing the SQL string. It is this
which is unreasonable as it is reinventing the parser from sqlite.

I have to ask an obvious question, why didn't the author of proposed
Boost.Sqlite just start with one of these mature libraries? This sqlpp11
looks very nice, comparable to soci if not better.

Thanks


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk