09-11-21, 12:47 PM
(آخر تعديل لهذه المشاركة : 09-11-21, 12:52 PM {2} بواسطة Anas Mahmoud.)
سأخبرك بالطريقة ان شاء الله
ستقوم بتصميم الاستعلامات بشكل منفصل كما اخبرتك سابقا
وكلما احتجت ان تضيف قيم الى شرط معين (برامتر ) اضف متغير بهذا الشكل مثلا [a] لا يهم الاسم فعلا المهم ان كل البرامترات تكون باسامي مختلفة
الان نأتي في الكود ونقوم بعمل الاستعلام بشكل طبيعي ومن ثم نضيف البرامترات
لاحظ ان الاسم غير مهم اطلاقا المهم هو الترتيب
وكذلك ليس شرطا ان تكون البرامترات كلها في استعلام واحد بل حتى لو كانت في الاستعلامات الفرعية
قمت بتعديل PopulateDataGridView للتسهيل مثل هذا الامر
الان الاستخدام سهل جدا
لو اعطيتني تفاصيل الجداول ربما استطعنا تبسيط الاستعلامات وتجزيئها ان شاء الله
ستقوم بتصميم الاستعلامات بشكل منفصل كما اخبرتك سابقا
وكلما احتجت ان تضيف قيم الى شرط معين (برامتر ) اضف متغير بهذا الشكل مثلا [a] لا يهم الاسم فعلا المهم ان كل البرامترات تكون باسامي مختلفة
الان نأتي في الكود ونقوم بعمل الاستعلام بشكل طبيعي ومن ثم نضيف البرامترات
كود :
Dim dt As New DataTable
Using conn As New OleDbConnection(ConnectionString)
Using cmd As New OleDbCommand("Select * from MasterQuery", conn)
Using da As New OleDbDataAdapter(cmd)
cmd.Parameters.AddWithValue("param1", 1)
cmd.Parameters.AddWithValue("param2", "Qatari Ryal")
da.Fill(dt)
End Using
End Using
End Using
DataGridView1.DataSource = dtلاحظ ان الاسم غير مهم اطلاقا المهم هو الترتيب
وكذلك ليس شرطا ان تكون البرامترات كلها في استعلام واحد بل حتى لو كانت في الاستعلامات الفرعية
قمت بتعديل PopulateDataGridView للتسهيل مثل هذا الامر
كود :
Sub PopulateDataGridView(dgv As DataGridView, query As String, ParamArray params() As Object)
Dim dt As New DataTable
Using conn As New OleDbConnection(ConnectionString)
Using cmd As New OleDbCommand(query, conn)
Using da As New OleDbDataAdapter(cmd)
For Each p In params
cmd.Parameters.AddWithValue("param", p)
Next
da.Fill(dt)
End Using
End Using
End Using
dgv.DataSource = dt
End Subالان الاستخدام سهل جدا
كود :
PopulateDataGridView(DataGridView1, "Select * from MasterQuery", "1", "Qatari Ryal")لو اعطيتني تفاصيل الجداول ربما استطعنا تبسيط الاستعلامات وتجزيئها ان شاء الله

