JavaScrip Zone


新发表

新评论

留言信息

链接收藏

『中国群落博客』

免费注册博客通道

快速登陆


ASP如何制作随机显示的文章条目

用SQL语句得到Access数据库中的随机记录集
 
“用SQL语句得到数据库中的随机记录集”问题的答案网上以经很多了吧:
像SQL Server 2000:
SELECT TOP n * FROM tanblename ORDER BY NEWID()
Access
SELECT TOP n * FROM tanblename ORDER BY rnd([一个自动编号字段])

好了!我们来说说这个Access的:

打开Access2003建立一个带有自动编号字段的表 T1 : id_(auto),content_
随便插入些许记录 .
好了,我们是搞WEB开发的!
写个ASP看看
<%

 Dim Con,RS
  Set Con = Server.CreateObject("ADODB.CONNECTION")
  Con.ConnectionString = "Provider=MicroSoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("*.mdb")
  Con.CommandTimeout = 20
  Con.CursorLocation = 3
  Con.Open


  Set RS = Con.Execute("SELECT TOP 3 [content_] FROM [T1] ORDER BY rnd([id_])")
  Do While Not RS.EOF
   Response.Write RS.Fields("content_").Value & "<br />"
   RS.MoveNext
  Loop
  RS.Close
  Set RS = Nothing
  
  
  Con.Close
  Set Con = Nothing
   

%>


在localhost上运行一下这个ASP,看到结果了吧,记住!再F5一下!咦?怎么没有改变,不是我们想要的!
当然了,rnd在运行前应该执行Randomize语句的!
可是又怎么执行?
Access里是否支持Randomize?我也不太清楚,带着疑问看了一下帮助,只找到了VBS里的那个Randomize……
解决问题是每个程序员最来精神的!
赶紧去Google一下! 结果半天没找到解决方案,有的干脆用asp来循环的找position,呸,费半天劲干什么呢,我就想SQL解决怎么办?
Access里的Randomize不知道怎么用,asp的基本功还会吧?开动脑筋,有了!


<%

 Dim Con,minPID,RS
  Set Con= Server.CreateObject("ADODB.CONNECTION")
  Con.ConnectionString = "Provider=MicroSoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("*.mdb")
  Con.CommandTimeout = 20
  Con.CursorLocation = 3
  Con.Open

  Randomize
  Set RS = Con.Execute("SELECT TOP 3 [content_] FROM [T1] ORDER BY rnd(-(id_+" & rnd() & "))")
  Do While Not RS.EOF
   Response.Write RS.Fields("content_").Value & "<br />"
   RS.MoveNext
  Loop
  RS.Close
  Set RS = Nothing
 
 
  Con.Close
  Set Con = Nothing

%>

嗯,这回再试一试!

OK了!每次F5后都能是“随机”的感觉了 


                                                                 2005-10-26 18:09:00

Posted by jser | 阅读全文() | 回复(0) | 引用通告() | 编辑

..................................................
博客的精神于写自己某一刻的思想或心动!
..................................................
当然要是你愿意就是拿来做记事本也可以!
..................................................
群落博客将提供全程免费服务!免费注册!
..................................................
欢迎您成为群落博客的成员!使用之前请先看系统帮助>>>>系统帮助
..................................................

免费注册群落博客【点击完成注册】
..................................................

发表评论:

    昵称:
    密码: (游客无须输入密码)
    主页:
    标题: