大家给看个触发器吧。
有个登录系统的用户表,想记录每个用户登陆和退出系统的时间。
用户表
表名:授权
1 编号 varchar 50 1
0 姓名 varchar 50 1
0 口令 varchar 50 1
0 权限 varchar 1000 1
0 id int 4 0
0 WorkAt varchar 50 1
workat 表示登陆机器名,退出时清除。
登陆记录表
表名:授权_登录记录
3 id int 4 0
0 lognum varchar 50 1
0 logname varchar 50 1
0 workat varchar 50 1
0 logindate datetime 8 1
0 logoutdate datetime 8 1
用户登陆后,通过 授权表 中的 workat字段触发,写入一条登陆记录。退出的时候更新 logoutdate 字段。
------解决方案--------------------
SQL code
create trigger trigger_workat
on [用户表]
after update
as
if update(workat)
begin
if inserted.workat <> ' '
插入记录到[用户登陆表]
else
更新[用户登陆表]的logoutdate字段
end