http://www.perlmonks.org?node_id=379318


in reply to OO concepts and relational databases

There's a separate idea dealing with object identity. In the database I've stored a fact( name=diotalevi, homepage=http://grenekatz.org ), in your OO world you may have multiple in-memory objects all dealing in the same fact. When you update an object representing a record would that update all the other objects tied to that fact? Or what of transactions? Or what of comparing objects for identity? If I have two objects pointing to the same record would I compare them for perl-object equality or record-equality? I would tend to thing that things such as eval { $oa->{'homepage'} = '...'; ... die }; ... = $ob->{'homepage'} would properly note that updates to $oa only propogate to $ob if $oa's update transaction completed successfully. Or maybe $oa and $ob should be considered part of the same connection so uncommitted updates would be visible to both but not to a hypothetical $oc.

This is something additional for you to think about anyway.