<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2800.1561" name=GENERATOR></HEAD>
<BODY>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2>I was a DBA for nearly 5 years in
the City-of-London and I loved triggers for several reasons:</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2>1. Not if the DBA maintains the
triggers.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2>2. Don't try testing against the
production database.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2>3. What the can't see they can't !"£$%
up.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2>4. Bad design causes that. Set up
'rules' that can not be broken (improved security)!!</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2>5. Never had any problems
myself.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2>6. Common database code is held
in one place (the database) instead of several programs. Change it in one place
not many!! And no recompile required <bliss>.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2>etc.</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006><FONT
face="Comic Sans MS" color=#0000ff size=2></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=299344315-30102006></SPAN><FONT
face="Comic Sans MS" size=2>regards,</FONT> <BR><FONT face=Arial> </FONT>
<BR><FONT face="Comic Sans MS" size=2>Robert W.Mills</FONT> <BR><FONT
face="Comic Sans MS" size=2>MIS Systems Development
Manager</FONT> <BR><FONT face="Comic Sans MS" size=2>Pinnacle
Arvato</FONT> <BR><FONT face="Comic Sans MS" size=2>+44 (0)</FONT><FONT
face="Comic Sans MS" size=2>20</FONT> <FONT face="Comic Sans MS" size=2>8309
3604</FONT> </DIV>
<DIV> </DIV><BR>
<DIV class=OutlookMessageHeader lang=en-us dir=ltr align=left>
<HR tabIndex=-1>
<FONT face=Tahoma size=2><B>From:</B>
powerh-l-bounces+robert.mills=pinnaclearvato.co.uk@lists.sowder.com
[mailto:powerh-l-bounces+robert.mills=pinnaclearvato.co.uk@lists.sowder.com]
<B>On Behalf Of </B>Robert Edis<BR><B>Sent:</B> 30 October 2006
15:38<BR><B>To:</B> powerh-l@lists.sowder.com<BR><B>Subject:</B> Re: Triggers
and RDBM's<BR></FONT><BR></DIV>
<DIV></DIV><BR><FONT face=sans-serif size=2>My inderstanding is that DBA's hate
triggers for several reasons:</FONT> <BR><BR><FONT face=sans-serif size=2>1.
they are difficult to keep track of and it is easy to create trigger loops.
I.e. trigger A causes trigger B to fire which causes trigger C to fire
which causes trigger A to fire.</FONT> <BR><FONT face=sans-serif size=2>2. they
generally can't be over-ridden for test cases, debugging, or special
cases.</FONT> <BR><FONT face=sans-serif size=2>3. are "hidden" from the
developers.</FONT> <BR><FONT face=sans-serif size=2>4. have security
implications. E.g. a user doesn't have update access to a table but the
application they use can fire the trigger. Use of the trigger bypasses the
user security and allows the user to update the table.</FONT> <BR><FONT
face=sans-serif size=2>5. difficult to tune database for performance if it has
lots of triggers.</FONT> <BR><FONT face=sans-serif size=2>etc.</FONT>
<BR><BR><FONT face=sans-serif size=2>Bluey</FONT> <BR></BODY></HTML>