خواستم سرعت اجرای stored procedure رو امتحان کنم نسبت به روش نوشتن کوئری در خود برنامه ای مثل سیشارپ که بر به مشکل خوردم. مشکل من اینه :
یک پایگاه داده با 1 میلیون رکورد ایجاد کردم بعد با 2 روش این رکورد ها رو فراخونی کردم و درون data table قرار دادم و بعدش تو datagirdview نمایش دادم
روش اول که تو خود محیط C# کوئری رو نوشتم
string str = "select * from tbl ";
SqlConnection a = new SqlConnection(@"Data Source=.;Initial Catalog=phonbook;Integrated Security=True");
a.Open();
SqlCommand b = new SqlCommand();
DataTable dt = new DataTable();
SqlDataAdapter da = new SqlDataAdapter(str, a);
da.Fill(dt);
dataGridView1.DataSource = dt;
این روش معمولی هستش که 15 ثانیه طول می کشه تا تمام 1 میلیون رکورد رو نمایش بده که زمان زیادیه.
همین روش رو با SP پیاده کردم و تو datagird بازم نمایش دادم که زمان شد 11 ثانیه ولی بازم این زمان برام خیلی زیاده و میخوام به محض اینکه دکمه نمایش رو زدم در حد اقل زمان اطلاعات رو نمایش بده.
بنظرتون مشکل من از کجا بوده؟ چرا اینقدر زمان برای نمایش اطلاعات از بانک تلف میشه؟
آیا این عادیه برای 1 میلیون رکورد؟
ممنون