用sql server 写一个触发器,作用是当 一个字段(如flag)的值从0变为1时同一个表中的另一个时间字段(time)获取当前系统的时间

zhaozhaojoy 2018-04-09 10:01:17
主键是联合的,有三个字段组成
...全文
460 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 2018-04-09
  • 打赏
  • 举报
回复
--测试数据
if not object_id(N'test_a') is null
drop table test_a
Go
CREATE TABLE DBO.test_a(
id INT,
flag INT,
[time] DATETIME
)
INSERT INTO dbo.test_a(id,flag,[time])
SELECT 1,1,N'2017-01-01 11:11:11'
UNION ALL
SELECT 2,0,N'2017-02-02 11:11:11'
--测试数据结束

--创建触发器
CREATE TRIGGER dbo.trtest_a
ON dbo.test_a
FOR UPDATE
AS
BEGIN
UPDATE test_a
SET [time] = GETDATE()
FROM inserted
WHERE inserted.id = test_a.id
AND inserted.flag = 0

END
GO
--测试
UPDATE test_a SET flag = 0 WHERE id=1

SELECT * FROM test_a


zhaozhaojoy 2018-04-09
  • 打赏
  • 举报
回复
用sql server 写一个触发器,作用是当 一个字段(如flag)的值从0变为1时同一个表中的另一个时间字段(time)获取当前系统的时间

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧