ACCESS如何随机抽取数据

由于Access数据库记录集缓存的原因,从代码里得到Access数据库随机记录是得不到,需要用随机SQL语句的办法来消除缓存。  
 
下面就是例子:  
 
查看例子  
 
<%@  Page  Language="C#"  Debug="true"  %>  
<%@  import  Namespace="System.Data"  %>  
<%@  import  Namespace="System.Data.OleDb"  %>  
<title>随机得到Access数据库记录</title>  
<script  runat="server">  
void  Page_Load(Object  src,EventArgs  e)  
{  
if(!IsPostBack)  
 {  
 string  MyConnString  =  "Provider=Microsoft.Jet.OleDB.4.0;Data  Source="  
               +  Server.MapPath("aspxWeb.mdb.ascx");  
 Random  R  =  new  Random();  
 int  intRandomNumber  =  R.Next(1,1000);  
 
 string  sql  =  "select  top  10  id  As  序号,Title  As  标题  from  Document  Order  By  Rnd("  
           +  (-1  *  intRandomNumber).ToString()  +  "*id)";  
 OleDbConnection  MyConnection  =  new  OleDbConnection(MyConnString);  
 MyConnection.Open();  
 OleDbCommand  cmd  =  new  OleDbCommand(sql,MyConnection);  
 OleDbDataReader  dr  =  cmd.ExecuteReader();  
   
 DataGrid1.DataSource  =  dr;  
 DataGrid1.DataBind();  
 cmd.Dispose();  
 MyConnection.Close();  
 MyConnection.Dispose();  
 MyConnection  =  null;    
 }  
}  
 
</script>  
<form  runat=server>  
<asp:DataGrid  id="DataGrid1"  HorizontalAlign="Center"  
 Width="600px"  runat="server"  Font-Size="9pt">  
 <AlternatingItemStyle  BackColor="#EEEEEE"></AlternatingItemStyle>  
 <HeaderStyle  BackColor="#AAAADD"  Font-Bold="True"  HorizontalAlign="Center"  />  
</asp:DataGrid>  
</form>
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值