Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

怎样实现进入数据库时自动按照日期删除数据

刘东升  发表于:2010-01-08 13:37:40  
复制

想实现打开数据库时自动更新数据库内容,按照时间自动删除业务员名字!

我写了个但是只能删除第一条,不能根据条件全部删除

 

Function OpenForm(FormID As Integer)
On Error GoTo Err_OpenForm

Dim I As Integer

Dim Rs As ADODB.Recordset

Set Rs = New ADODB.Recordset

STemp = "Select * From 车主资料库"
Rs.Open STemp, CurrentProject.Connection, adOpenKeyset, adLockOptimistic

Rs.MoveFirst

For I = 0 To Rs.RecordCount - 1
If Rs("拨打时间") < Date Then
Rs("业务员") = Null
Rs.MoveNext

End If
Next I

Err_OpenForm:

End Function

 

请指教,谢谢

 

Top
andymark 发表于:2010-01-08 13:52:36

执行一个更新查询就行了

update 车主资料库 set 业务员=null where 拨打时间< date

 



刘东升 发表于:2010-01-08 14:23:43

谢谢,可是能自动执行这个更新查询吗?我做了个auto宏执行这个更新查询可以吗?我试了试,不好用



大肚秃秃 发表于:2010-01-08 16:27:03
上传源程序我试一下

刘东升 发表于:2010-01-11 17:40:27

利用windows系统的任务计划和建立宏已经解决。

 

andymark 老师说的做了个更新查询然后按照以下百度查的方法做的

1.首先作一个宏,分两个操作。一个打开你的更新查询,二是退出(quit),这样的意思就是打开此access文件后,运行该查询,完成后关闭退出。
2.打开windows任务计划,新建一个任务。由你来决定运行的时间及次数。程序选access。(注意,用“浏览”选出access的程序路径。)
3.上述最后完成时打开“高级”选项。在运行框里打入路径:"C:\Program Files\Microsoft Office\OFFICE11\MSACCESS.EXE" E:\ACCESS\直销客户数据库_be.mdb/x auto。这其实就是在原来的路径上加了后面没有引号的一段,也就是你要运行的文件路径。最后的 /x sss是最重要的。其中sss指在第1步中建的宏名。
如此,成功了。我验证过。

PS:access中工具---选项---编辑/查找---确认下面的三个勾提前去掉。

 

如果还有更好的方法欢迎指导,现把源库上传

点击下载此附件

 

用户编号0000

密码123



ACMAIN.CHM 发表于:2010-01-11 20:41:53

用VBS写个脚本,然后在WINDOWS的计划任务中定时执行。

 

VBS 操作ACCESS网上有很多例子。

大致是

 

set conn=createobject(adodb.conne...

conn.opn ".....

conn.execute "update 车主资料库 set 业务员=null where 拨打时间< date()"

conn.close

set conn=nothing

 

 



总记录:5篇  页次:1/1 9 1 :