Home >> FAQs/Tutorials >> SQL Server FAQ

SQL Server FAQ - Improving the Trigger to Handle NULL Values

By: FYIcenter.com

(Continued from previous topic...)

How To Improve the Trigger to Handle NULL Values?

When a NULL value is concatenated with a string, the result will be a null value. So if you want the trigger to properly report NULL values, you need to enhance the trigger as shown in the following tutorial example:

USE FyiCenterData;
GO

-- trigger executed but printed a NULL
UPDATE fyi_users SET email=NULL
   WHERE name = 'John King';
GO

(1 row(s) affected)

ALTER TRIGGER update_user ON fyi_users
AFTER UPDATE
AS
  DECLARE @new VARCHAR(80);
  DECLARE @old VARCHAR(80);
  SELECT @new = email FROM INSERTED;
  SELECT @old = email FROM DELETED;
  SELECT @new = ISNULL(email,'NULL') FROM INSERTED;
  SELECT @old = ISNULL(email,'NULL') FROM DELETED;
  PRINT 'Email changed from '+@old+' to '+@new;
GO

-- trigger is reporting NULL values now
UPDATE fyi_users SET email=NULL
   WHERE name = 'John King';
GO
Email changed from NULL to NULL
(1 row(s) affected)

The trigger is handling NULL values properly now.

(Continued on next topic...)

  1. What Are Triggers?
  2. What Are the Basic Features of a Trigger?
  3. How To Create a Simple Table to Test Triggers?
  4. How To Create a DML Trigger using CREATE TRIGGER Statements?
  5. How To Test a DML Trigger?
  6. How To List All Triggers in the Database with sys.triggers?
  7. How To Modify Existing Triggers using "ALTER TRIGGER"?
  8. How To Delete Existing Triggers using "DROP TRIGGER"?
  9. How To Get the Definition of a Trigger Back?
  10. How To Disable Triggers using "DISABLE TRIGGER"?
  11. How To Create a Trigger for INSERT Only?
  12. How To See the Event List of an Existing Trigger using sys.trigger_events?
  13. How To Access the Inserted Record of an Event?
  14. How To Access the Deleted Record of an Event?
  15. How To Improve the Trigger to Handle NULL Values?
  16. What Happens to a Trigger with Multiple Affected Rows?
  17. How To Override DML Statements with Triggers?
  18. How To Create a DDL Trigger using "CREATE TRIGGER" Statements?
  19. Can You Roll Back the DDL Statement in a Trigger?
  20. Can You Create a Logon Trigger in SQL Server 2005 Express Edition?

Related Articles:

More...


Other Tutorials/FAQs:

More...


Related Resources:

More...


Selected Jobs:

More...