Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

Re: How to structure applications using a RDBMS

by mpeppler (Vicar)
on Jul 18, 2002 at 21:59 UTC ( #183061=note: print w/ replies, xml ) Need Help??


in reply to How to structure applications using a RDBMS

Personally I like to define logical operations on the data, write perl subroutines that map to these operations, and then do whatever database manipulation that needs to happen from these subroutines.

As most of my work is with Sybase databases there is often a one-to-one mapping between these logical operations and a Sybase stored procedure, in which case there is no explicit SQL code in the application - only a call to a stored procedure, which adds an additional layer of abstraction.

This may not be the best solution in all cases, but it's what I've found easiest to maintain.

Michael


Comment on Re: How to structure applications using a RDBMS
Re: Re: How to structure applications using a RDBMS
by vladb (Vicar) on Jul 18, 2002 at 22:20 UTC
    Further extending your point, I would suggest separating data and functionality into chunks that could be represented by a Perl object. These objects will hide the complexity of RDBMS interaction (SQL etc). Objects could then be related and structured in a meaningful way for optimal performance and minimal maintenance cost.

    Actually, I'm just about to write a system (in Perl) for artist/artwork and article management. In the back-end there's a MySQL database where data about various artists, artwork and related articles is being kept. The task is to come up with web tool that would help clients to access and manipulate this data.

    For this to work, I will first design Perl objects to represent an individual artist, artwork and article. These objects will also implement interface for changing/updating data (in the MySQL database) that is encapsulated in each object. Finally, I'll simply write a template driven CGI script that will make use of such objects....

    _____________________
    # Under Construction

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others browsing the Monastery: (8)
As of 2014-12-26 09:23 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (171 votes), past polls