I'm not 100% sure which side of the fence I'd sit on here but at uni and in any of the database design books I've read you're told to put all the business logic in the database. Why? So that the business rules are handled no matter how the frontend is coded.
It should be noted that the subjects I took and the books I've read were very database centric, and basically written from the point of view of a dedicated DBA. With most of the coldfusion projects I've worked on or seen discussed on CFAUSSIE we have 1 or 2 programmers who do all of the coldfusion AND database design AND database coding. It's part of our movement towards rapid development. Obviously when that becomes 10 - 50 programmers and months to years of development, who can you trust to understand and validate every business rule? Also something that I have yet to see discussed on here is the situation where ColdFusion is but one method of accessing the database, eg. an Access/Forms/4GL/C++/Java etc. frontend for content management administrators, and ColdFusion to display it to the public for example. (and we're still talking websites). I think that for the most 'robust' application most of the logic should be maintained in the database - that's what all these 'triggers' and 'referential integrity' and other relational database terms you may have heard thrown around are for... BUT it takes longer and is not always as easy to move from development to production etc. Just a few of my thoughts, - J > -----Original Message----- > From: WALTERS Scott [mailto:[EMAIL PROTECTED] > Sent: Thursday, 18 March 2004 8:43 AM > To: CFAussie Mailing List > Subject: [cfaussie] Re: Database programming > > > imho, the DBMS is the protector of data, hence it should be validating > everything that goes in, and it should perform any associated > tasks without > being asked to do it by the app (eg update an article > requires incrementing > workflow, writing an audit record etc) > > Basically, multiple apps should be able to hook into the one > database and > use it without having to be aware of potentially different > validation logic > in other apps. That doesn't preclude validation logic sitting > in the app > itself, it just means that ultimately data must be validated > by the database > before its acceptable. > > Cheers > > Scott. > > -----Original Message----- > From: Taco Fleur [mailto:[EMAIL PROTECTED] > Sent: Thursday, 18 March 2004 07:15 AM > To: CFAussie Mailing List > Subject: [cfaussie] Re: Database programming > > > I'm really interested in getting the DB to do more work for > > me, but am just wondering about the best way to approach it... > > > > Currently I use the database for very little except storing > > the data... all the logic and validity checking is done in > > the application. I know > > should be using it for more, which is why I'm learning more > > about it now. > > I still suggest to have it to do everything but the validity > checking, I see > that as unneeded traffic to the database. > > > IMPORTANT NOTICE: This e-mail and any attachment to it are > intended only to be read or used by the named addressee. It > is confidential and may contain legally privileged > information. No confidentiality or privilege is waived or > lost by any mistaken transmission to you. The RTA is not > responsible for any unauthorised alterations to this e-mail > or attachment to it. Views expressed in this message are > those of the individual sender, and are not necessarily the > views of the RTA. If you receive this e-mail in error, please > immediately delete it from your system and notify the sender. > You must not disclose, copy or use any part of this e-mail if > you are not the intended recipient. > > --- > You are currently subscribed to cfaussie as: > [EMAIL PROTECTED] > To unsubscribe send a blank email to > [EMAIL PROTECTED] > > MXDU2004 + Macromedia DevCon AsiaPac + Sydney, Australia > http://www.mxdu.com/ + 24-25 February, 2004 > --- You are currently subscribed to cfaussie as: [EMAIL PROTECTED] To unsubscribe send a blank email to [EMAIL PROTECTED] MXDU2004 + Macromedia DevCon AsiaPac + Sydney, Australia http://www.mxdu.com/ + 24-25 February, 2004
