قم بتحميل اول 100 خانه مثلا. ثم في حاله عمل scroll قم بتحميل 100 اخرى مع تحديد السطر 101 . وهكذا ...
ولكن سؤال .
ما نوع البيانات المطلوب عرضها . وكم عددها.؟
وهل الجدول فيه حقل ترقيم ؟
طبعا اسم هذه الطريقة هو Paging ويمكنك البحث عنها ...
هنا مثال لجلب بيانات من الجدول ABC الذي يحتوي 1000000 حقل وعرضها كل 25 في دفعة ... مثلاً
لتستغرق العملية اجزاء من الثانية .
وهنا C# حسب المترجم
وانظر هذا المثال .
.............................
من الجدير بالذكر ان تسيق Datagridview (الافتراضي على الاقل) يأخذ جزء من الوقت عند اضافة اي حقل .!!!
ولكن سؤال .
ما نوع البيانات المطلوب عرضها . وكم عددها.؟
وهل الجدول فيه حقل ترقيم ؟
طبعا اسم هذه الطريقة هو Paging ويمكنك البحث عنها ...
هنا مثال لجلب بيانات من الجدول ABC الذي يحتوي 1000000 حقل وعرضها كل 25 في دفعة ... مثلاً
لتستغرق العملية اجزاء من الثانية .
PHP كود :
Imports System.Data.SqlClient
Public Class Form1
Dim pagingAdapter As SqlDataAdapter
Dim pagingDS As DataSet
Dim scrollVal As Integer
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim connectionString As String = "Data Source=.;Initial Catalog=ABC;Integrated Security=True"
Dim sql As String = "SELECT * FROM ABC"
Dim connection As New SqlConnection(connectionString)
pagingAdapter = New SqlDataAdapter(sql, connection)
pagingDS = New DataSet()
connection.Open()
pagingAdapter.Fill(pagingDS, scrollVal, val(NumericUpDown1.value), "ABC_table")
connection.Close()
DataGridView1.DataSource = pagingDS
DataGridView1.DataMember = "ABC_table"
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
scrollVal = scrollVal - val(NumericUpDown1.value)
If scrollVal <= 0 Then
scrollVal = 0
End If
pagingDS.Clear()
pagingAdapter.Fill(pagingDS, scrollVal, Val(NumericUpDown1.Value), "ABC_table")
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
scrollVal = scrollVal + val(NumericUpDown1.value)
pagingDS.Clear()
pagingAdapter.Fill(pagingDS, scrollVal, val(NumericUpDown1.value), "ABC_table")
End Sub
End Class
PHP كود :
using System.Data.SqlClient;
public class Form1
{
SqlDataAdapter pagingAdapter;
DataSet pagingDS;
int scrollVal;
// ERROR: Handles clauses are not supported in C#
private void Button1_Click(System.Object sender, System.EventArgs e)
{
string connectionString = "Data Source=.;Initial Catalog=ABC;Integrated Security=True";
string sql = "SELECT * FROM ABC";
SqlConnection connection = new SqlConnection(connectionString);
pagingAdapter = new SqlDataAdapter(sql, connection);
pagingDS = new DataSet();
connection.Open();
pagingAdapter.Fill(pagingDS, scrollVal, val(NumericUpDown1.value), "ABC_table");
connection.Close();
DataGridView1.DataSource = pagingDS;
DataGridView1.DataMember = "ABC_table";
}
// ERROR: Handles clauses are not supported in C#
private void Button2_Click(System.Object sender, System.EventArgs e)
{
scrollVal = scrollVal - val(NumericUpDown1.value);
if (scrollVal <= 0) {
scrollVal = 0;
}
pagingDS.Clear();
pagingAdapter.Fill(pagingDS, scrollVal, Val(NumericUpDown1.Value), "ABC_table");
}
// ERROR: Handles clauses are not supported in C#
private void Button3_Click(System.Object sender, System.EventArgs e)
{
scrollVal = scrollVal + val(NumericUpDown1.value);
pagingDS.Clear();
pagingAdapter.Fill(pagingDS, scrollVal, val(NumericUpDown1.value), "ABC_table");
}
}
وانظر هذا المثال .
.............................
من الجدير بالذكر ان تسيق Datagridview (الافتراضي على الاقل) يأخذ جزء من الوقت عند اضافة اي حقل .!!!
