永发信息网

sql语句问题 急!急!

答案:1  悬赏:10  手机版
解决时间 2021-08-12 05:36
  • 提问者网友:我没有何以琛的痴心不悔
  • 2021-08-11 06:37

<% set conn=server.CreateObject("adodb.connection")
conn="driver={microsoft access driver (*.mdb)};dbq="&server.MapPath("../data/db1.mdb")
set rs=server.CreateObject("adodb.recordset")
rs.open"select * from liuyan order by id desc",conn,3,2
if rs.recordcount>10 then
dim shu
shu=rs.recordcount-10
rs.open"delete * from liuyan where id<"&shu,conn,3,2
end if

 一直提示 无效,说的好像是 参数 无效

我的原理是 如果记录到10条了,就把记录最前面多余的部分删除

最佳答案
  • 五星知识达人网友:duile
  • 2021-08-11 07:35
你这个代码存在多处错误。
1. 第二行错误,要改成:conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.MapPath("../data/db1.mdb")
2.修改时,rs.open不要使用rs.open sql语句, 3,2 ,而是改成 3,3改成乐观锁定为让你死锁的机会小得多。 
3.逻辑错误,第8行改为:rs.open"delete * from liuyan where id in(select top "&shu&" id from liuyan order by id)",conn,3,3
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯