دوستان من خودم این روش رو پیدا کردم :
1- ابتدا اطلاعات رو از فایل اکسل میخونم و میریزم درون یک دیتا گرید ویو
بوسیله این کدها که درون این لینک توضیح داده : https://www.mspsoft.com/1394/07/26/%D8%AE%D9%88%D8%A7%D9%86%D8%AF%D9%86-%D9%81%D8%A7%DB%8C%D9%84-%D9%87%D8%A7%DB%8C-excel-%D8%AF%D8%B1-%D8%B3%DB%8C-%D8%B4%D8%A7%D8%B1%D9%BE/
2- سپس تک تک اطلاعات رو از سلول های همون دیتاگرید ویو بوسیله insert درون پایگاه sqlite ذخیره می کنم
بوسیله این کد :
foreach (DataGridViewRow row in dataGridView1.Rows)
{
string constring = "Data Source=Db_Gavahi.sqlite;Version=3";
using (SQLiteConnection con = new SQLiteConnection(constring))
{
using (SQLiteCommand cmd = new SQLiteCommand("INSERT INTO Per2 VALUES(@Kod, @Per, @Sho, @Mon)", con))
{
cmd.Parameters.AddWithValue("@Kod", row.Cells[0].Value);
cmd.Parameters.AddWithValue("@Per", row.Cells[1].Value);
cmd.Parameters.AddWithValue("@Sho", row.Cells[2].Value);
cmd.Parameters.AddWithValue("@Mon", row.Cells[3].Value);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
}
}
}
MessageBox.Show("Records inserted.");
خب در واقع مشکلی هم وجود نداره اما نمیدونم اینکار کار بهینه و درستی هست یا نه ....؟؟؟
من یک فایل اکسل با 4 ستون و تقریبا 6500 ردیف رو بوسیله این روش میریزم درون sqlite که حدودا 20 ثانیه طول میکشه البته روی سیستم خودم اینطوریه که سیستم رده بالایی هست نمیدونم روی سیستم های دیگه چقدر طول بکشه
ممنون میشم اگر روش بهینه تری هست بهم معرفی کنید