Beefy Boxes and Bandwidth Generously Provided by pair Networks
The stupid question is the question not asked

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.


  • Comment on Re: How to structure applications using a RDBMS

Replies are listed 'Best First'.
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?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://183061]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others having an uproarious good time at the Monastery: (4)
As of 2017-11-22 04:34 GMT
Find Nodes?
    Voting Booth?
    In order to be able to say "I know Perl", you must have:

    Results (315 votes). Check out past polls.