首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL Server 2008、SQL Server 2005

SQL Server 2008、SQL Server 2005
EN

Stack Overflow用户
提问于 2011-03-03 21:59:28
回答 2查看 78关注 0票数 0

我正在使用一个数据库名xyz,表名a,b,c,d。我的问题是,如果在表a的名字字段,表b的电子邮件字段,表c的电话号码,更改/更新我想使表d字段上传到1。

这些表有许多字段,但我只想在三个不同的表中给出三个字段更改时才更改表d字段。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-03 22:11:53

如果我正确理解了您的问题,我将向表d添加三列,并在其他表的update触发器中将每一列设置为1。然后,在selects中,如果表d中的所有三列都设置为1,则可以将虚拟列设置为1。

票数 0
EN

Stack Overflow用户

发布于 2011-03-03 22:11:15

在所有三个表abc上都需要一个update触发器,该触发器检查相关值是否已更改,如果更改,则更新表d中相应的upload字段

a的示例

代码语言:javascript
复制
CREATE TRIGGER dbo.YourTrigger 
   ON  a 
   AFTER UPDATE
AS 
BEGIN
    SET NOCOUNT ON;

IF NOT UPDATE(name)
  RETURN

UPDATE d 
set upload = 1
FROM d
JOIN inserted i ON i.join_column = d.join_column     
END
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5181661

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档