<% 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么?我的Access也不是很熟,看了一下帮助,只找到了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 %>
<%
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么?我的Access也不是很熟,看了一下帮助,只找到了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 %>
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后都能是“随机”的感觉了 如果您有更好的解决办法或建议请告诉我,谢谢!