Aracılığıyla paylaş


update() (Transact-SQL)

INSERT veya update belirli bir sütun bir tablo ya da görünüm üzerinde çalışıldı olup olmadığını gösteren bir Boole değeri döndürür.update() herhangi bir gövdesi içinde kullanılan bir Transact-SQL ekleme veya güncelleştirme tetikleyici sınama olmadığını tetikleyici yürütmek gerekir belirli eylemler.

Konu bağlantısı simgesiTransact-SQL sözdizimi kuralları

Sözdizimi

UPDATE ( column ) 

Bağımsız değişkenler

  • column
    sütun adı, bir INSERT veya update eylemsınamaktır.on yan tümce tetikleyicinin içinde tablo adı belirtilmediği için sütun adından önce tablo adını dahil etmeyin.' % S'sütun sütun olabilir veri türü tarafından desteklenen SQL Server.Ancak, hesaplanan sütunlar bu bağlamda kullanılamaz.

Dönüş Türleri

Boolean

Açıklamalar

update(), INSERT veya update girişimi başarılı olmasına bakılmaksızın, doğru sonucunu verir.

INSERT veya update eylem birden fazla sütuniçin sınamak için ayrı bir güncelleştirme belirtin (column) ilk aşağıdaki yan tümce .Birden çok sütun, INSERT veya update eylemleri için columns_updated kullanarak de sınanabilir.Bu sütunları eklenen veya güncelleştirilen gösteren bit deseni döndürür.

Sütunları açık değerler veya eklenen örtülü (null) değerler olduğundan IF update INSERT eylemleri doğru değerini döndürür.

Not

IF update (column) yan tümce işlevleri, bir IF ile aynı, varsa...else veya yan tümce ve başlangıç kullanabilirsiniz...Son blok.Daha fazla bilgi için, bkz. Akış denetimi dil (Transact-SQL).

Güncelleştirme (column) gövdesi içinde herhangi bir yerde kullanılabilir bir Transact-SQL Tetikleyici.

Not

SQL Server 2000'de, update() değil algılamak değişiklikler yapar timestamp sütunlar.Bu sütunlar için sütunların olup güncelleştirilir bakılmaksızın bir tetikleyici gövdesi içinde IF update() yan tümce yanlış döndürür.İçinde SQL Server 2008 ve SQL Server 2005, update() değişiklikleri algılar timestamp sütunlar.Bu, doğru sütun güncelleştirilir DML tetikleyici gövdesi içinde IF update() yan tümce döndürür.

Örnekler

Aşağıdaki örnek, Herkes güncelleştirmeye çalıştığında istemci bir ileti yazdırır bir tetikleyici oluşturur StateProvinceID veya PostalCode sütunlarından Address tablo.

USE AdventureWorks2008R2;
GO
IF EXISTS (SELECT name FROM sys.objects
      WHERE name = 'reminder' AND type = 'TR')
   DROP TRIGGER Person.reminder;
GO
CREATE TRIGGER reminder
ON Person.Address
AFTER UPDATE 
AS 
IF ( UPDATE (StateProvinceID) OR UPDATE (PostalCode) )
BEGIN
RAISERROR (50009, 16, 10)
END;
GO
-- Test the trigger.
UPDATE Person.Address
SET PostalCode = 99999
WHERE PostalCode = '12345';
GO