-----------------------------------------------------------

New Message on BDOTNET

-----------------------------------------------------------
From: manivasakan_p
Message 3 in Discussion


Triggers 
 Microsoft� SQL Server� 2000 triggers are a special class of stored procedure defined 
to execute automatically when an UPDATE, INSERT, or DELETE statement is issued against 
a table or view. Triggers are powerful tools that sites can use to enforce their 
business rules automatically when data is modified. Triggers can extend the integrity 
checking logic of SQL Server constraints, defaults, and rules, although constraints 
and defaults should be used instead whenever they provide all the needed 
functionality.  
Tables can have multiple triggers. The CREATE TRIGGER statement can be defined with 
the FOR UPDATE, FOR INSERT, or FOR DELETE clauses to target a trigger to a specific 
class of data modification actions. When FOR UPDATE is specified, the IF UPDATE 
(column_name) clause can be used to target a trigger to updates affecting a particular 
column.  
Triggers can automate the processing for a company. In an inventory system, update 
triggers can detect when a stock level reaches a reorder point and generate an order 
to the supplier automatically. In a database recording the processes in a factory, 
triggers can e-mail or page operators when a process exceeds defined safety limits.  
The following trigger generates an e-mail whenever a new title is added in the pubs 
database: 
CREATE TRIGGER reminder
ON titles
FOR INSERT
AS
   EXEC master..xp_sendmail 'MaryM',
      'New title, mention in the next report to distributors.' 
Triggers contain Transact-SQL statements, much the same as stored procedures. 
Triggers, like stored procedures, return the result set generated by any SELECT 
statements in the trigger. Including SELECT statements in triggers, except statements 
that only fill parameters, is not recommended. This is because users do not expect to 
see any result sets returned by an UPDATE, INSERT, or DELETE statement.  
You can use the FOR clause to specify when a trigger is executed:  
AFTER  
The trigger executes after the statement that triggered it completes. If the statement 
fails with an error, such as a constraint violation or syntax error, the trigger is 
not executed. AFTER triggers cannot be specified for views, they can only be specified 
for tables. You can specify multiple AFTER triggers for each triggering action 
(INSERT, UPDATE, or DELETE). If you have multiple AFTER triggers for a table, you can 
use sp_settriggerorder to define which AFTER trigger fires first and which fires last. 
All other AFTER triggers besides the first and last fire in an undefined order which 
you cannot control.  
AFTER is the default in SQL Server 2000. You could not specify AFTER or INSTEAD OF in 
SQL Server version 7.0 or earlier, all triggers in those versions operated as AFTER 
triggers.  
INSTEAD OF 
 The trigger executes in place of the triggering action. INSTEAD OF triggers can be 
specified on both tables and views. You can define only one INSTEAD OF trigger for 
each triggering action (INSERT, UPDATE, and DELETE). INSTEAD OF triggers can be used 
to perform enhance integrity checks on the data values supplied in INSERT and UPDATE 
statements. INSTEAD OF triggers also let you specify actions that allow views, which 
would normally not support updates, to be updatable. 

-----------------------------------------------------------

To stop getting this e-mail, or change how often it arrives, go to your E-mail 
Settings.
http://groups.msn.com/BDotNet/_emailsettings.msnw

Need help? If you've forgotten your password, please go to Passport Member Services.
http://groups.msn.com/_passportredir.msnw?ppmprop=help

For other questions or feedback, go to our Contact Us page.
http://groups.msn.com/contact

If you do not want to receive future e-mail from this MSN group, or if you received 
this message by mistake, please click the "Remove" link below. On the pre-addressed 
e-mail message that opens, simply click "Send". Your e-mail address will be deleted 
from this group's mailing list.
mailto:[EMAIL PROTECTED]

Reply via email to