[DISCUSSION] Object Relational Mapping (ORM) for different programming languages

Ruslan Zasukhin sunshine at public.kherson.ua
Wed Oct 10 16:47:09 CDT 2007


On 10/10/07 11:54 PM, "Philip Mötteli" <philip.moetteli at econophone.ch>
wrote:

Hi Philip,

>>>> May be such style possible in Obj-C.
>>> 
>>> Yes, it is.
>>> The first part though, where he declares the relationship, has to be
>>> implemented in a OR-library, so that it is reflected in the db.
>> 
>> Or even better on db engine level, right?
> 
> (Disclaimer: I don't know Ruby and I don't know RealBasic either.)
> 
> Actually, as far as I understand it, Valentina is much better than
> this approach. As I understand it, this ActiveRecord library has to
> create a foreign key at the other side. With Valentina, we can just
> use OID and it's done. Especially, we have the huge advantage, that
> this OID can point to any table.

Well, so your point is that its possible develop db structures based only on
OID ?

I think the more types of links the better.
    right now Valentina supports three
        * Foreign Key
        * ObjectPtr  linked to RecID
        * BinaryLink

In theory its possible make
        * ObjectsPtr linked to OID


> For the other part: what is great with dynamic, dynamic (method)
> binding, is that I can put a fault at the place of the real object
> (containing only this OID) and when this fault receives any message,
> the fault replaces itself with the real object, by loading the data
> from the db, and then forwarding the original message to the real
> object. We say, that the fault has fired.

I see idea.

> I don't even need a common superclass, like this ActiveRecord.
> Even, if you don't have something like OID, one could replace that
> with two entries for each of those relationships:
> 
> 1. the name of the other table. (-> kind of TABLE_ID)
> 2. the primary key of the record. (-> kind of REC_ID)
> 
> Less handy, than Valentina.

Okay.

But please find place in your model and dreams for Valentina Links.

IMHO they are very powerful feature. Okay you have OID, you can easy solve
faulting, easy provide generalization of all objects...but then also present
task how effectively link records of different table, do search of linked
records, ad so on. Right?

Saving just OID as kid of pointer -- is ala Foreign Key.


-- 
Best regards,

Ruslan Zasukhin
VP Engineering and New Technology
Paradigma Software, Inc

Valentina - Joining Worlds of Information
http://www.paradigmasoft.com

[I feel the need: the need for speed]




More information about the Valentina mailing list