Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: Topics in Perl Programming: Table-Mutation Tolerant Database Fetches with DBI

by Dominus (Parson)
on Nov 29, 2000 at 00:08 UTC ( [id://43756]=note: print w/replies, xml ) Need Help??


in reply to Topics in Perl Programming: Table-Mutation Tolerant Database Fetches with DBI

Says princepawn:
> How does one write Perl code such that it can work
> without modification in the face of labeling,
> destructive, or positional field mutations?
It's going to take a lot of effort to do it in Perl or in any other language. Here's a small table with only two columns:
ID1 ID2 ----------- 119 666 437 112
Now switch the order of the two columns, and change the names so that ID1 is now called ID2 and ID2 is now called ID1:
ID1 ID2 ----------- 666 119 112 437
Now how are you going to write a program that magically copes with that? This is not a Perl problem; it's an impossible problem. Even looking at the database schema is not going to work.

The only solution is for the database itself to carry its own description. One way is to install a special row into each table:

ID1 ID2 ----------- "id2" "id1" ... ...
then the program can select this row, examine it to see whether the column names or the order have changed, and it can make the appropriate allowances.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://43756]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others lurking in the Monastery: (3)
As of 2025-05-24 22:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?
    erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.