Dittos to what Masem says. This actually looks like the first system I designed immediately after reading some OO books. (In this case that is not a complement.)

This is a bit of an over simplification, but the design should be for change. Installed applications change, and requirements change over the development cycle. Change should be easy. So if a SQL table changes (column add/change/remove), or the tables are completely redesigned, how easy is it to change the application?

If a simple table change causes changes in all most of your layers that might indicate a design problem. I like the idea of generating columns lists from the db, but is it done at all levels?

Having a new column automatically added to an INSERT statement is great, but is it automatically added to the web form? If so, is the layout what you want? If not, how does the database ever get a value? And do you want to be automatically generating column lists in one part of your application, but not others?

To make a long story longer, given that it is in place already, the added complexity probably won't hurt you as long as you have the ability to hand-code the SQL statements that don't fit neatly into the schema. I actually do something similar for the maintenance part of my apps that only admin users see. But for end-users, presentation and details matter so much that hand-coding is more normal.


In reply to Re: Architecture of a Database system by voyager
in thread Architecture of a Database system by Boldra

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.