会计考友 发表于 2012-7-31 22:26:35

如何随机得到Access数据库记录

 由于Access数据库记录集缓存的原因,从代码里得到Access数据库随机记录是得不到,需要用随机SQL语句的办法来消除缓存。   下面就是例子:
  voidPage_Load(Objectsrc,EventArgse)
  {
  if(!IsPostBack)
  {
  stringMyConnString=“Provider=Microsoft.Jet.OleDB.4.0;DataSource=”
  +Server.MapPath(”aspxWeb.mdb.ascx”);
  RandomR=newRandom();
  intintRandomNumber=R.Next(1,1000);
  stringsql=“selecttop10idAs序号,TitleAs标题fromDocumentOrderByRnd(”
  +(-1*intRandomNumber).ToString()+“*id)”;
  OleDbConnectionMyConnection=newOleDbConnection(MyConnString);
  MyConnection.Open();
  OleDbCommandcmd=newOleDbCommand(sql,MyConnection);
  OleDbDataReaderdr=cmd.ExecuteReader();
  DataGrid1.DataSource=dr;
  DataGrid1.DataBind();
  cmd.Dispose();
  MyConnection.Close();
  MyConnection.Dispose();
  MyConnection=null;
  }
  }
    
页: [1]
查看完整版本: 如何随机得到Access数据库记录