Linux中国  设为主页
 收藏本站
 
当前位置: > 首页 ->数据库应用 ->Access ->教你ASP.NET 2如何随机读取Access记录
  相关分类: 
Access
DB2
Mysql
Oracle
PostgreSQL
SQL Server
Sybase
其他数据库
  站内搜索: 
热门文章排行
热门文章排行 ACCESS中使用SQL语句(04-12)
SQLServer和Access、Excel数据传输 (04-23)
把Access转成SQL数据库的方法介绍(04-17)
SQL和Access操作数据库结构SQL语句(04-17)
在Access数据库中使用SQL Server语句(05-23)
精采文章排行
精采文章排行 步步精细教你AS/400 DB2数据导入Acce(06-29)
如何把Access转成SQL Server的方法介(06-29)
推荐:ASP+Access数据库安全隐患及对(06-29)
教你如何检查Access数据库中数据有效(06-29)
如何利用Access数据库打印带相片的证(06-29)
  ·推荐:ASP+Access数据库安全隐患及对策 ·教你如何检查Access数据库中数据有效性 ·如何利用Access数据库打印带相片的证件 ·如何用Access实现学校课程表的科学管理 ·讲解如何用Maxthon Access远程登录电脑 ·教你ASP.NET 2如何随机读取Access记录 ·如何使用制表控制器简化Access对表操作 ·Access中如何指定工作组从而启动MDB文件 ·专家浅谈Access数据库精髓并非VBA之中

教你ASP.NET 2如何随机读取Access记录

作者:Webmaster   来源:   点击:   日期:2007-06-29 [收藏] [投稿]

  IE是否经常中毒?推荐您











由于使用ADO访问Access数据库会有缓存,这在随机提取数据库数据时,例如:sql="select top 10 Title,objectGuid from Document Order By Rnd(id)",将得不到随机记录,下面的例子可以克服这一缺陷,实现数据库的随机读取。

C#: 

<%@ Page Language="C#" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<script runat="server"> 

protected void Page_Load( object sender, EventArgs e ) 
{ 
Random rnd = new Random(unchecked((int)DateTime.Now.Ticks)); 
int intRandomNumber = rnd.Next(); 
string ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;
ata Source= DataDirectory aspxWeb.mdb;Persist Security Info=True"; 
string sql = "select top 10 Title,objectGuid from Document
 Order By Rnd(" + (-1 * intRandomNumber) + "*id)"; 
System.Data.OleDb.OleDbConnection cn = 
new System.Data.OleDb.OleDbConnection(ConnectionString); 
cn.Open(); 
System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand(sql, cn); 
System.Data.OleDb.OleDbDataReader dr = 
cmd.ExecuteReader
(System.Data.CommandBehavior.CloseConnection); 
GridView1.DataSource = dr; 
GridView1.DataBind(); 
dr.Close(); 
cmd.Dispose(); 
cn.Dispose(); 
cn = null; 

} 
</script> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title>随机读取Access数据库记录</title> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false"> 
<Columns> 
<asp:HyperLinkField DataNavigateUrlFields=
"objectGuid" HeaderText="文章" DataTextField="Title" 
DataNavigateUrlFormatString="http://dotnet.aspx.cc/article/{0}/read.aspx" /> 
</Columns> 
</asp:GridView> 
</div> 
</form> 
</body> 
</html> 

VB.NET: 

<%@ Page Language="VB" Debug="true" %> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 

<script runat="server"> 

Protected Sub Page_Load(ByVal sender As 
Object, ByVal e As System.EventArgs) 
Dim TimeString As String = DateTime.Now.Ticks.ToString() 
Dim a As UInt32 = UInt32.Parse(TimeString.Substring
(TimeString.Length - 8, 8)) 
Dim b As Int32 = BitConverter.ToInt32(BitConverter.GetBytes(a), 0) 
Dim rnd As Random = New Random(b) 
Dim intRandomNumber As Integer = rnd.Next 
Response.Write(intRandomNumber) 
Dim ConnectionString As String =
 "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= 
DataDirectory aspxWeb.mdb;Persist Security Info=True" 
Dim sql As String = "select top 10 Title,
objectGuid from Document Order By 
Rnd(" + (-1 * intRandomNumber).ToString() + "*id)" 
Dim cn As System.Data.OleDb.OleDbConnection =
 New System.Data.OleDb.OleDbConnection 
(ConnectionString) 
cn.Open() 
Dim cmd As System.Data.OleDb.OleDbCommand =
 New System.Data.OleDb.OleDbCommand(sql, cn) 
Dim dr As System.Data.OleDb.OleDbDataReader = 
cmd.ExecuteReader
(System.Data.CommandBehavior.CloseConnection) 
GridView1.DataSource = dr 
GridView1.DataBind() 
dr.Close() 
cmd.Dispose() 
cn.Dispose() 
cn = Nothing 
End Sub 
</script> 

<html xmlns="http://www.w3.org/1999/xhtml"> 
<head id="Head1" runat="server"> 
<title>随机读取Access数据库记录</title> 
</head> 
<body> 
<form id="form1" runat="server"> 
<div> 
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false"> 
<Columns> 
<asp:HyperLinkField DataNavigateUrlFields="objectGuid"
 HeaderText="文章" DataTextField="Title" 
DataNavigateUrlFormatString="http://dotnet.aspx.cc/article/{0}/read.aspx" /> 
</Columns> 
</asp:GridView> 
</div> 
</form> 
</body> 
</html>
(责任编辑:王瑞)



 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:如何使用制表控制器简化Access对表操作   下一篇:讲解如何用Maxthon Access远程登录电脑
文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论

   相关文章:
·如何把Access转成SQL Server的方法介绍

   文章评论:(1条)
  
 请留名: 匿名评论   点击查看所有评论 论坛讨论
 

 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。