منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : كود البحث في قاعدة البيانات
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم و رحمة الله وبركاته

كود البحث في قاعدة البيانات :
عندي تكست بوكس ملتي تكست موجود فيه القيم :
1
2
3

عاوز البحث في قاعدة البيانات يبعث عن 1 و 2 و 3 في حقل id و يعرضهم مع بعض في نفس الاستعلام
قاعدة البيانات المستخدمة Access
السلام عليكم ورحمة الله وبركاته
اخي سعيد الافضل ان تضع 2 نكست بوكس وتبحث عن قيمة الاي دي بحيث تكون اكبر او تساوي القيمة الادنى في مربع النص الاول والقيمة الاعلى اصغر او تساوي   مربع النص الثاني 
اي استخدم 

كود :
where Id >= "& CInt(TextBox1.Text) &" And Id <= " & CInt(TextBox2.text) &"

او استخدم bettween مثل البحث بين تاريخين
اما مثل ما اوردت فلا يمكن
(31-01-21, 01:29 AM)ابراهيم ايبو كتب : [ -> ]السلام عليكم ورحمة الله وبركاته
اخي سعيد الافضل ان تضع 2 نكست بوكس وتبحث عن قيمة الاي دي بحيث تكون اكبر او تساوي القيمة الادنى في مربع النص الاول والقيمة الاعلى اصغر او تساوي   مربع النص الثاني 
اي استخدم 

كود :
where Id >= "& CInt(TextBox1.Text) &" And Id <= " & CInt(TextBox2.text) &"

او استخدم bettween مثل البحث بين تاريخين
اما مثل ما اوردت فلا يمكن

للتوضيح اكتر اخي ابراهيم

قاعدة البيانات تحتوي على عدد كبير من البيانات اكثر من ١٠ الاف
و انا عاوز اعمل بحث فيهم بأكثر من قيمة في نفس الحقل 

يعني عاوز اخليه يعرض بيانات شخص اسمه احمد و محمد و يوسف في نفس جملة الاستعلام مع العلم ان كل شخص فيهم يختلف في الترتيب في الجدول مثلا احمد رقم ٢٥ و محمد ٢٠٠٠ و هكذا بس البحث عن طريق الاسم و لكن اكثر من اسم
السلام عليكم اخي سعيد
لتنفيذ فكرتك :
ضع مربع نص للبحث بحيث تكتب الاسماء بجانب بعضها مع فراغ واحد بين الاسماء
ضع الكود التالي في بوتون (استخدم داتا تابل جديدة للبحث غير التي تملا البيانات )
هذا الكود سيتحقق من مربع نص البحث  ان كان فارغا سيتم املاء الداتا غرايد بنفس الداتا تابل التي جلبنا فيها البيانات كافة
 اما ان كان فيها اسماء  فسيتم انشاء مصفوفة من الاسماء الموجودة في مربع نص البحث مع  داتا تابل باسم جديد
ثم نعمل جملة فور تلف على عناصر المصفوفة وكل مرة تبحث عن عنصر ويضاف الى الداتاغرايد

كود :
' داتا تابل جديدة
       Dim dtt As New DataTable()
       If TextBox1.Text.Trim = "" Then
           dgv_table.DataSource = dt
       Else
           ' انشاء مصفوفة من الاسماء الموجودة في مربع البحث بدلالة المسافة بين الاسماء
           Dim Serh() As String = TextBox1.Text.Trim.Split(" ")
           For i As Integer = 0 To Serh.Length - 1
               da = New OleDbDataAdapter("select * from Personal Where CV_Name = '" & Serh(i) & "'", Con)
               da.Fill(dtt)
           Next
           dgv_table.DataSource = dtt
       End If
 غير اسم الجدول واسم الحقل الذي تريد البحث به