سوال: زمان طولانی هنگام وارد کردن داده به SQL (چطوری سرعت Insert رو افزایش بدم؟)

ساخت وبلاگ
با سلام .
من یه حلقه ی For دارم که میاد و Insert رو انجام میده . به توصیه یکی از دوستان کانکشن رو بیرون حلقه باز و بسته کردم . ولی بازم هنگام وارد کردن داده به ازای 1500 بار اجرای حلقه 20 ثانیه طول میکشه!!!!! راه حل بهتری وجود داره ؟

کد ها رو میزارم .




/////////////////تبدیل تاریخ میلادی به شمسی////////////////


public string MiladiToShamsi(DateTime _date)
{
PersianCalendar pc = new PersianCalendar();
StringBuilder sb = new StringBuilder();
sb.Append(pc.GetYear(_date).ToString("0000"));
sb.Append("/");
sb.Append(pc.GetMonth(_date).ToString("00"));
sb.Append("/");
sb.Append(pc.GetDayOfMonth(_date).ToString("00"));
return sb.ToString();




}
//////////////////گرفتن تاریخ شروع و پایان////////////////////


string PreventiveId = dataGridView1.CurrentRow.Cells["PreventiveId"].Value.ToString();
int period = Convert.ToInt32(dataGridView1.CurrentRow.Cells["PeriodDay"].Value.ToString());
string startDate =shamsitomiladi( txtDateBegin.Text);
string endDate =shamsitomiladi( txtDateEnd.Text);
DateTime dtStart = DateTime.Parse(startDate);
DateTime dtEnd = DateTime.Parse(endDate);
PersianCalendar pc = new PersianCalendar();
sconnection = new SqlConnection();
sconnection.ConnectionString = PM.Properties.Settings.Default.ConPM;
if (sconnection.State == ConnectionState.Closed)
{
sconnection.Open();
}
for (DateTime nextdate = dtStart; nextdate <= dtEnd; nextdate = pc.AddDays(nextdate, period))
{
string Insert2 = "Insert into TblPreventiveDay values ('{0}','{1}','{2}','{3}')";
string shamsi = MiladiToShamsi(nextdate);
Insert2 = string.Format(Insert2, PreventiveId, shamsi, 0, 0);
Function.DoDml2(Insert2, sconnection);
}
sconnection.Close();
MessageBox.Show("پیشگیرانه طی دوره روزانه ایجاد شد");


////////////////////////////////////////////////////////


public static void DoDml2(string Query,SqlConnection con)
{
SqlCommand cmd = new SqlCommand(Query, con);
cmd.ExecuteNonQuery();


}



تمپوs...
ما را در سایت تمپوs دنبال می کنید

برچسب : نویسنده : خنج tempos بازدید : 159 تاريخ : چهارشنبه 19 مهر 1396 ساعت: 15:18