在表

时间:2017-01-22 16:07:45

标签: sql-server triggers

使用Microsoft SQL Server Management Studio。

我需要帮助使用流行的Northwind示例数据库为名为dbo.Employees的表创建快速FOR INSERT触发器。触发器应默认区域' dbo中的专栏。员工来自' WA'如果没有插入区域。

如果插入的区域是' WA',那么' Country'列应默认为' USA'。任何帮助将不胜感激。

员工表如果有帮助:

1

1 个答案:

答案 0 :(得分:2)

就像戈登·林诺夫所说,这应该是一个约束,但如果你真的需要使用触发器来完成这个,那么这将有效:

var result = list
    .GroupBy(x => x.RoomIndexID)
    .Aggregate(x => x.Yield(), (x, y) => x.SelectMany(z => y, (a, b) => a.Append(b)));

一旦插入某些内容,它将更新记录。

  • 如果WA作为国家/地区插入,则会将其更新为美国
  • 如果插入NULL或未插入任何内容,则默认为WA
  • 在任何其他情况下,它会插入所插入的内容,让我们说加拿大