Which Transact-SQL query should you use?

You develop a Microsoft SQL Server 2012 database that contains a table named
Customers. The Customers table has the following definition:

You need to create an audit record only when either the MobileNumber or HomeNumber
column is updated.
Which Transact-SQL query should you use?

You develop a Microsoft SQL Server 2012 database that contains a table named
Customers. The Customers table has the following definition:

You need to create an audit record only when either the MobileNumber or HomeNumber
column is updated.
Which Transact-SQL query should you use?

A.
CREATE TRIGGER TrgPhoneNumberChange
ON Customers FOR UPDATE
AS
IF COLUMNS_UPDATED (HomeNumber, MobileNumber)
– – Create Audit Records

B.
CREATE TRIGGER TrgPhoneNumberChange
ON Customers FOR UPDATE
AS
IF EXISTS( SELECT HomeNumber FROM inserted) OR
EXISTS (SELECT MobileNumber FROM inserted)
– – Create Audit Records

C.
CREATE TRIGGER TrgPhoneNumberChange
ON Customers FOR UPDATE
AS
IF COLUMNS_CHANGED (HomeNumber, MobileNumber)
– – Create Audit Records

D.
CREATE TRIGGER TrgPhoneNumberChange
ON Customers FOR UPDATE
AS
IF UPDATE (HomeNumber) OR UPDATE (MobileNumber)
– – Create Audit Records

Explanation:
Reference:
http://msdn.microsoft.com/en-us/library/bb510663.aspx
Reference:
http://msdn.microsoft.com/en-us/library/ms186329.aspx



Leave a Reply 1

Your email address will not be published. Required fields are marked *


Minion

Minion

The condition in A & C is AND.

IF EXISTS in B will always return true because even if you update one of the two column or not, if the they have an existing value (NOT NULL).

That’s why D is the correct answer.