create trigger trigger_table
on table
for update
as
begin
update table set time = getdate() where no in ( select no from inserted)
end
return
on table
for update
as
begin
update table set time = getdate() where no in ( select no from inserted)
end
return
解决方案 »
- 在VS2005中使用SQL语句创建视图的错误
- 求一个SQL语句
- 请教一个查询怎么写
- 关于xml
- 看看咯,我机子上的“事件查看器”上的记录,我看不懂呀
- 急用:SQL导出数据到excel 发现法语部分的单词丢失
- 有没有办法不安装SQL SERVER就可以直接用DTSRUN执行包,谢谢!
- Oracle有个伪列RowID可以访问记录的行号,在SQL Server里也有类似功能吗,可以访问行号
- 在ASP里面如果显示SQL里面的NTEXT字段内容?
- 优化是一个急需解决的课题,但出现此类的情况如何解决此类的问题,多谢指教!继续学习中......
- 超时已过期后,程序不能连接到数据库,重起服务器后,一部分数据丢失,多谢了
- 救命啊!sql2000不能打SP4或者sp3的补丁!
全CSDN的兄弟都会感谢你的,
全国人民都会记住你的.
反正最终要实现的目的是:更改最后一条记录的TYPE值,其最后一条记录的TIME值就取系统当前时间就可以了。请帮忙!
Create table A(id int ,No varchar(10),Name varchar(10),type varchar(20),
Time datetime)
insert into A select 1,'00000008','张三','解挂','2006-03-30 16:25:32.030'
union all select 2,'00000008','张三','解挂','2006-03-30 16:25:32.030'
union all select 3,'00000008','张三','解挂','2006-03-30 16:25:32.030'
union all select 4,'00000008','张三','解挂','2006-03-30 16:25:32.030'--触发器
CREATE TRIGGER T_A ON A
FOR UPDATE
AS
BEGIN
UPDATE A SET Time=GETDATE()
WHERE ID=(SELECT I.ID FROM INSERTED I INNER JOIN DELETED D
ON I.ID=D.ID
)
END
--更新
UPDATE A SET type='挂失'WHERE
ID=4--结果
/*
1 00000008 张三 解挂 2006-03-30 16:25:32.030
2 00000008 张三 解挂 2006-03-30 16:25:32.030
3 00000008 张三 解挂 2006-03-30 16:25:32.030
4 00000008 张三 挂失 2006-03-31 11:00:25.873
*/
--删除环境
Drop table A
Drop trigger T_A