delete from 表 where datediff(day,getdate(),上次登录时间)>=180
解决方案 »
- 两个表关联的问题
- 我用jspmyadmin管理sql2000数据库.说无法连接上数据库
- 怪事???我的sqlsever agent 已经开启了,但数据却没有备份.
- 存储过程执行完了,表里没记录,但是ID已经增加了,这是怎么回事??
- 急,请教,sql server自增字段不能自增
- 请问触发器能调用asp程序吗?
- 如何对存储过程或者动态查询语句的返回的结果集进行操作?在不允许使用临时表的前提下!高分求解
- 早就想简单说说: 关于树型结构的存储及维护
- 怎样同时对两个结构完全一样的数据表进行查询,请高手指点!!!!
- 关于ReportingService服务器的搭建
- 请教一个简单的存储过程!!! 解决问题马上送分!!!
- 邹建兄弟请进一下,关于刚才用bcp导出还有疑问。
create table 人员表
(name varchar (20),zhtime datetime)insert into 人员表
select 'FIRE','2004-09-06'
UNION
select 'aaa','2003-02-01' delete 人员表
where datediff(day,zhtime,getdate())>90
(所影响的行数为 1 行)select * from 人员表
name zhtime
----- -----------------------
FIRE 2004-09-06 00:00:00.000
2.写一个作业,每天定时执行清理过期帐号的工作(是否每天你自己定)
--清理过期帐号的语句
delete from 表 where 登录日期<dateadd(month,-3,getdate())
--管理
--SQL Server代理
--右键作业
--新建作业
--"常规"项中输入作业名称
--"步骤"项
--新建
--"步骤名"中输入步骤名
--"类型"中选择"Transact-SQL 脚本(TSQL)"
--"数据库"选择执行命令的数据库
--"命令"中输入要执行的语句:
delete from 表 where 登录日期<dateadd(month,-3,getdate())
--确定
--"调度"项
--新建调度
--"名称"中输入调度名称
--"调度类型"中选择你的作业执行安排
--如果选择"反复出现"
--点"更改"来设置你的时间安排
然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行设置方法:
我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定.