使用
select * from abc order by rnd(id)
可以在access本地查询中得到随即的纪录
但是在asp.net中使用oledb每次得到的数据都是相同的顺序
原来以为是output缓冲的问题
但是把duration设为1页不能解决问题
向高人求解
select * from abc order by rnd(id)
可以在access本地查询中得到随即的纪录
但是在asp.net中使用oledb每次得到的数据都是相同的顺序
原来以为是output缓冲的问题
但是把duration设为1页不能解决问题
向高人求解
解决方案 »
- 急!急!急!给段JavaScript 鼠标悬浮事件代码
- jquery怎么实现一个浮动窗口
- ASP.NET AJAX加载好慢啊,发布了的打开也要半天,有谁知道为什么吗?
- 在asp.net里使用jQuery出现问题
- 我做了一个动态取下拉列表成功了,共享,但可能这个奇怪的问题,你们都没有想到过...一起来看看..
- ASP.NET多套模版的解决。
- 奇怪问题,系统Windows Update后,aspx文件失去图标~~
- vs2010启用源码调试问题
- 我在VS.net中的.vb文件中如何调用Server.MapPath??
- asp.net 读取自定义存储过程
- <script runat="server" language="cs">和页面语言冲突怎么解决?
- 一个重启iis的奇怪问题?
为什么要得到随机的记录呢?有什么用处呢?
请说明!
还有就是如果想得到随机的记录的话,你上面那条sql语句能实现吗?
如果是在access里没有问题的话,只是在asp.net里不行的话,你可以单步跟踪调试一下即可找到原因的。
(c#)
Random r=new Random();
Int i=r.Next(取植范围);
然后
查找数据库
select * from abc where id='i';
Random r=new Random();则是每个产生不同的随机数
select * from abc order by rand(id)
id不同生成的随机数也不同,但是相同的ID随机数是相同的,不管执行几次。select * from abc order by rand()
则每次执行都会产生不同的随机数,不过一次查询产生的随机数相同。
1、先建一个View:SELECT RAND() AS re
2、建一个Function:
create function usp_GetRand
(
)
RETURNS float
AS
BEGIN
DECLARE @Result float
SELECT @Result = re from v_rand
RETURN @Result
END
3、select * from abc order by usp_GetRand()
Access能用存储过程么?..............
看来还是没有理解我的意思其实用自己写随机函数的方法我早就解决问题了但是现在的问题是
我在Access里面建立一个表
填入一些数据(比如可以按顺序在id一列中填入1,2,3,4......)
然后新建一个查询
(比如select * from [your_table_name] order by rnd(id))这个时候每次查询出来的结果都是不同的
=============================
注意每次都不同
=============================然后在asp.net中写oledb对象连接数据库
并且调用数据sqlcommand使用同样的查询语句
(比如上面的那句)
每次得到的都相同
=============================
这里每次都相同
=============================
甚至我调用那个查询的数据
结果得到的数据也是每次都相同的
所以我想知道的就是产生这种现象的原因是什么
是不是数据连接是存在某种缓冲机制
还请大家亲自尝试后再研究这个问题
sqlcommand-->OleDbCommand