代码之家  ›  专栏  ›  技术社区  ›  Henri

引用SQL Server触发器的更新行

  •  3
  • Henri  · 技术社区  · 14 年前

    我想总是更新数据库中更新行的值。

    想象一下,我有一张有名字和价格的桌子 每次插入或更新行时,我都希望以固定的金额降低价格。

    如何使用SQL Server 2005做到这一点?

    我现在有点像

    CREATE TRIGGER LowerPriceOnInsert ON products
    AFTER INSERT, UPDATE
    AS
        IF UPDATE(ProductPrice)
    
    1 回复  |  直到 14 年前
        1
  •  8
  •   Aaron Bertrand    14 年前

    好吧,假设你想降价5美分:

    UPDATE p
      SET price = price - 0.05
      FROM dbo.Products AS p
      INNER JOIN inserted AS i
      ON p.ProductID = i.ProductID;
    

    http://msdn.microsoft.com/en-us/library/ms191300.aspx