بسبب ذاكرة التخزين المؤقت لمجموعة سجلات قاعدة بيانات Access، لا يمكن الحصول على سجلات عشوائية من قاعدة بيانات Access من التعليمات البرمجية، ومن الضروري استخدام عبارات SQL عشوائية لإزالة ذاكرة التخزين المؤقت.
فيما يلي مثال:
شاهد المثال http://dotnet.aspx.cc/Exam/GetRandom.aspx
<%@ Page Language="C#" Debug="true" %>
<%@ import Namespace="System.Data" %>
<%@ import Namespace="System.Data.OleDb" %>
<title>احصل على سجلات قاعدة بيانات Access بشكل عشوائي</title>
<script runat="server">
باطلة Page_Load(Object src,EventArgs e)
{
إذا (!IsPostBack)
{
سلسلة MyConnString = "Provider=Microsoft.Jet.OleDB.4.0;مصدر البيانات ="
+ Server.MapPath("aspxWeb.mdb.ascx");
Random R = new Random();
int intRandomNumber = R.Next(1,1000);
string sql = "حدد أعلى 10 معرفات كرقم تسلسلي، والعنوان كعنوان من ترتيب المستند حسب 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>
<نموذج تشغيل = الخادم>
<asp:DataGrid معرف = "DataGrid1" HorizontalAlign = "المركز"
العرض = "600 بكسل" runat = "الخادم" حجم الخط = "9pt">
<AlternatingItemStyle BackColor="#EEEEEE"></AlternatingItemStyle>
<HeaderStyle BackColor="#AAAADD" Font-Bold="True" HorizontalAlign="Center" />
</asp:داتاغريد>
</النموذج>