تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
البحث المتعدد بقواعد البيانات
#1
السلام عليكم ورحمة الله وبركاته 
كيف ابحث بحقل واحد عن عدة كلمات 
مثلا لدي خلية  تحوي التالي  منتدى فيجوال بيسك لكل العرب 
معلوم تفصل بين الكلمات مسافات انا ريد ان ابحث كالتالي اكتب من كل كلمة حرفين اوحرف  وافصل بمسافة 
اي اكتب  من في بي    فيظهر لي النتيجة منتدى فيجوال بيسك لكل العرب 
استخدم السكول سيرفر اريد استعلاما يفعل ذلك
وشكرا
                                                        Heart سبحان الله والحمد لله ولا اله الا الله والله اكبر  Heart
الرد }}}}
تم الشكر بواسطة:
#2
كود :
Dim SQLDAP As New SqlDataAdapter("SELECT * FROM TabelName where Name like '%" + TextBox1.Text + "%'", Con)
       Dim ds As New DataSet
       SQLDAP.Fill(ds)
       ' فرضاً لو أرتد عرض النتيجه في داتا قريد فيو
       DataGridView1.dataSource = dt
الرد }}}}
تم الشكر بواسطة: العواد الصغير
#3
اخ عادل انا استخدم هذا الكود  ولكن عندما تضع فراغ وتكتب الكلمة الثالثة يذهب الى لا شيء ارجو ان تكون الفكرة وصلت 
وشكرا على ردك السريع وانا استخدم هذا الكود
 Dim sqltb007 As String = "SELECT        TOP (100) PERCENT ID, b1, b2, b3 FROM TB7 WHERE        (b3 LIKE '%" & txttbl007 & "%') ORDER BY ID "
                                                        Heart سبحان الله والحمد لله ولا اله الا الله والله اكبر  Heart
الرد }}}}
تم الشكر بواسطة:
#4
أبد ياغالي تحت أمرك وأن شاء الله تنحل مشكلتك 

أنا عملت لك مثال وهو عبـاره عن البحث بطريقتين أختر أي طريقه تناسبك 
الطريقه الأولى تعبة الكمبو بكس 
والثانيه بدون كمبو بكس أنا أفضل الطريقه الأولى


الملفات المرفقة
.zip   البحث.zip (الحجم : 30.71 ك ب / التحميلات : 24)
الرد }}}}
تم الشكر بواسطة: العواد الصغير
#5
(22-10-16, 05:24 AM)adel27 كتب : أبد ياغالي تحت أمرك وأن شاء الله تنحل مشكلتك 

أنا عملت لك مثال وهو عبـاره عن البحث بطريقتين أختر أي طريقه تناسبك 
الطريقه الأولى تعبة الكمبو بكس 
والثانيه بدون كمبو بكس أنا أفضل الطريقه الأولى

اولا اشكرك من كل قلبي 
ثانيا هذه الطريقة اعرفها من قبل اظن انني لم استطع ان اوصل الفكرة كما يجب هل هناك طريقة غير like للبحث 
بقواعد البيانات 
وشكرا  على ردك والسلام
                                                        Heart سبحان الله والحمد لله ولا اله الا الله والله اكبر  Heart
الرد }}}}
تم الشكر بواسطة:
#6
وعليكم السلام ورحمة الله وبركاته

توجد طريقة ترجع بأي سطر يحتوي عمود محدد على أي كلمة من الكلمات الموجودة في TextBox1
وهذا هو الكود لعمل ذلك
كود :
Dim mLike As String = "([column1] LIKE '%" & Join(Me.TextBox1.Text.Trim.Split, "%') OR ([column1] LIKE '%") & "%')"
Dim sql As String = "SELECT * FROM [Tabel1] WHERE " + mLike

لو وضعنا في TextBox1.Text النص التالي "من في بي" فإن جملة SQL راح تكون
كود :
SELECT * FROM [Tabel1] WHERE ([column1] LIKE '%من%') OR ([column1] LIKE '%في%') OR ([column1] LIKE '%بي%')

جربها يمكن تطلع مطابقة لسؤالك
الرد }}}}
تم الشكر بواسطة: myalsailamy , العواد الصغير
#7
نفس طريقتي  يا  اخ  ممدوح  ،
كما انه يوجد طرق اخرى و لكن هذه اسهلها ايضا يوجد  طريقة  CONTAINS و  FreeText و تمرر مجموعه من الكلمات كمصفوفه  و لكنها صعبه قليلاً كمبتدأ في ادارة قواعد البيانات  يعني يبغى لها اضافات اثناء تثبيت SQL  Server  ،  و في الحقيقه  لم اجربها  و انما قرات عنها سابقا و احببت اضافتها  لعلك تجد ضالتك فيها  ،  و هذا رابط يشرح طريقتها في الاستخدام  :

http://sqlmag.com/sql-server/sample-full...rch-engine

ايضا شيء اخر لو  اردت ان تبحث  في جميع الاعمده النصيه الموجوده  في  قاعدة البيانات  بنفس طريقة  الاخ ممدوح فقط  قم بدمج  الاعمده و طبق عليها  عملية like  مثال  :  
WHERE ([column1]+[column2] LIKE '%من%') OR ([column1]+[column2] LIKE '%في%') OR ([column1]+[column2] LIKE '%بي%')
اسم معرفي : محمد يحيى
الرد }}}}
تم الشكر بواسطة: العواد الصغير , ممدوح
#8
(22-10-16, 12:40 PM)ممدوح كتب : وعليكم السلام ورحمة الله وبركاته

توجد طريقة ترجع بأي سطر يحتوي عمود محدد على أي كلمة من الكلمات الموجودة في TextBox1
وهذا هو الكود لعمل ذلك
كود :
Dim mLike As String = "([column1] LIKE '%" & Join(Me.TextBox1.Text.Trim.Split, "%') OR ([column1] LIKE '%") & "%')"
Dim sql As String = "SELECT * FROM [Tabel1] WHERE " + mLike

لو وضعنا في TextBox1.Text النص التالي "من في بي" فإن جملة SQL راح تكون
كود :
SELECT * FROM [Tabel1] WHERE ([column1] LIKE '%من%') OR ([column1] LIKE '%في%') OR ([column1] LIKE '%بي%')

جربها يمكن تطلع مطابقة لسؤالك

السلام عليكم 
الطريقة هذه  تزيد الصفوف ولا تنقصها  or هي او اي ستزيد الصفوف بذلك لان اي حقل 
فيه احد الكلمات سيظهر على كل اشكرك اتعبتك معي 
وجزاك الله خيرا

(22-10-16, 06:55 PM)myalsailamy كتب : نفس طريقتي  يا  اخ  ممدوح  ،
كما انه يوجد طرق اخرى و لكن هذه اسهلها ايضا يوجد  طريقة  CONTAINS و  FreeText و تمرر مجموعه من الكلمات كمصفوفه  و لكنها صعبه قليلاً كمبتدأ في ادارة قواعد البيانات  يعني يبغى لها اضافات اثناء تثبيت SQL  Server  ،  و في الحقيقه  لم اجربها  و انما قرات عنها سابقا و احببت اضافتها  لعلك تجد ضالتك فيها  ،  و هذا رابط يشرح طريقتها في الاستخدام  :

http://sqlmag.com/sql-server/sample-full...rch-engine

ايضا شيء اخر لو  اردت ان تبحث  في جميع الاعمده النصيه الموجوده  في  قاعدة البيانات  بنفس طريقة  الاخ ممدوح فقط  قم بدمج  الاعمده و طبق عليها  عملية like  مثال  :  
WHERE ([column1]+[column2] LIKE '%من%') OR ([column1]+[column2] LIKE '%في%') OR ([column1]+[column2] LIKE '%بي%')

اشكرك  على الرد  جزاك الله خيرا
                                                        Heart سبحان الله والحمد لله ولا اله الا الله والله اكبر  Heart
الرد }}}}
تم الشكر بواسطة:
#9
اخي الفاضل تم اجابتك بمنطقيه بحيث من الممكن أن تعيد استخدام الاكواد كما تريد مثلا في هذه الحاله بدلا من OR استخدم And و معناه لابد ان العمود يحتوي جميع الكلمات الموجود في مفاتيح البحث
اسم معرفي : محمد يحيى
الرد }}}}
تم الشكر بواسطة:
#10
(22-10-16, 10:19 PM)myalsailamy كتب : اخي الفاضل تم اجابتك  بمنطقيه  بحيث من الممكن أن تعيد استخدام الاكواد كما تريد مثلا  في هذه الحاله بدلا من OR  استخدم And  و معناه  لابد ان العمود يحتوي جميع الكلمات الموجود في مفاتيح البحث

انا لست متذمرا  بل  شاكرا للتعاونكم اعلم انكم اجبتم بما علمتم وجزاكم الله خيرا والشكر موصول لكم ولهذا 
المنتدى الحميل
                                                        Heart سبحان الله والحمد لله ولا اله الا الله والله اكبر  Heart
الرد }}}}
تم الشكر بواسطة: myalsailamy


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  ما هو كود حفظ البيانات من الداتا جريد فيو إلى قاعدة البيانات kofa 0 22 أمس, 07:53 PM
آخر رد: kofa
  [سؤال] حفظ تاريخ معين بقاعدة البيانات توفي العراقي 3 74 أمس, 12:47 AM
آخر رد: ali.alfoly
  تغيير قاعدة البيانات الى .bak زيد زينوبي 3 52 03-12-16, 07:07 PM
آخر رد: ابراهيم النعيمي
  [سؤال] ايهما افضل في قواعد البيانات للتميم برنامج sal.softip 2 42 03-12-16, 06:59 PM
آخر رد: sal.softip
  قاعدة البيانات لا تدعم اللغة العربية ؟؟؟؟؟؟ صبري زينوبي 13 193 03-12-16, 04:47 PM
آخر رد: صبري زينوبي
  [VB.NET] كود البحث لا يظهر اي نتائج ولا اي اخطاء Asmaa adel 1 48 03-12-16, 09:41 AM
آخر رد: ابراهيم النعيمي
  [كود] تعديل كود البحث بين تاريخينب hglogtd 2 40 29-11-16, 01:37 AM
آخر رد: hglogtd
  البحث مثل جوجل Samosoft 4 65 29-11-16, 01:35 AM
آخر رد: Samosoft
  خطأ عند البحث khalid475 1 47 28-11-16, 06:23 PM
آخر رد: khalid475
  [سؤال] كود البحث عن طريق اسم naden 1 70 28-11-16, 02:05 PM
آخر رد: Adrees

التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم