Boost logo

Boost :

From: Robert Ramey (ramey_at_[hidden])
Date: 2020-04-07 20:49:34


On 4/7/20 11:58 AM, Ruben Perez via Boost wrote:
> On Tue, 7 Apr 2020 at 17:14, Robert Ramey via Boost <boost_at_[hidden]>
> wrote:
>
>> On 4/7/20 3:20 AM, Richard Hodges via Boost wrote:
>>> On Tue, 7 Apr 2020 at 05:18, Robert Ramey via Boost <
>> boost_at_[hidden]>
>>> wrote:
>>>
>>>> I'm going to come down on the side of those who suggest that you
>>>> consider other database systems besides mysql.
>>>>
>>>> One suggestion for you: Think BIG!!!
>>>>
>>
>
> First, it would have to be a concept, not an interface. By definition,
> async primitives in Asio are templates, which cannot be virtual. I am doing
> this in C++17 and may lower the requirement to C++14/11 soon, so I don't
> have language support for concepts.
>
> I guess we can define concepts like DatabaseConnection, PreparedStatement,
> Resultset... If you guys think this is the best way to go, we can explore
> this path. But I guess these depend a little on what the higher-level
> library is aiming to do. I accept suggestions and advice here.
>
> What I don't want is to assume the responsibility for implementing all the
> backends in the world,

And you shouldn't. You define your general interface and documentation
there of. Then you implement msql instance of it. Library users can
extend it as they need to. Basically it comes down to re-factoring what
you have to make it more extensible.

Robert Ramey


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