Even if you find a way to simulate the object-oriented
method, you'll be hit by the overhead.
see, youre talking about something like an emulator or interpeter that during run-time translates your simulated
OO into DB primitives.
I had my thoughts on this issue. I belive it can be done
partly.
Encapsulation of Data-Members could be achieved by formating memblocks while serializing each object with a unique ObjectID(instance) and TypeID.
Member fuctions could be created as regular functions that get extra parameters of ObjectID,TypeID(Inheritance/Polymorphism) and Pointer/Offset of memblock,
These parameters are actually replace the '*this' internal pointer of the object.
The main problem is to manage those structures in your code, allocations and deallocations,simulating pointers/references and so.
You have to TELL your program how to use your
structures, so it 'compiles' your code in run-time...
Not only a performance issue, but a headache too...
The best solution, in my opinion, is to have in the future
an access to the DB core from an outer C++ code.
Bottom line, keep your code clean and tidy.

you are dealing with a high level language.
Meanwhile, use 'memblocks' and 'TYPE'...