الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

استخدام جملة استعلام الاسم الاول و الاوسط و الاخير

بدأه صمت الفراشات في 26 أكتوبر 2012 · 3 رد · 887 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

عيد أضحى مبارك على الجميع

بالبداية بدي أحكي اني بعرف قوانين المنتدى و يعرف ممنوع طرح اي سؤال الا مع التجربة يعني البرنامج او الكود

لكن انا شغالة على مشروع تخرج و لا استطيع رفعه على المنتدى و اظن الكل يعرف لماذا !

لكني بحاجة لاستفسار عن شغلة بالSQL

مشرووعي على vb.net 2010 و بحاجة لجملة استعلام

عندي جدول فيه حقول الاسم الاول و الاسم الوسط و الاسم الاخير

و اريد اعمل استعلام بحيث اجيب السجلات المشابهة

بحث لو دخلت الاسم الاول و كان بالداتا بيز موجود 10 سجلات تبدا الاسم الاول فيها بهذا الاسم فيحضرها

فاذا اكملت الاسم و كتبت الاسم الثاني يبدا بحصر الاسماء التي لها نفس الاسم الاول و الاوسط و هكذا

علما انو الاسم الاول بحقل منفصل عن الاسم الاوسط و كذلك حقل الاسم الاخير

انا استخدمت هذا الكود

"Select * from users where fname + ' '+ mname+' '+lname+' '+famname +' ' like '%" & serch_text.Text & _
        "%'"

و هذا يعطي نتيجة صحيحة في حال دخلت الاسم مرتب و بين الكلمات مسافة لمرة واحد

يعني لو ضغط space مرتين بيعتبرها حرف !

فلما ادخل "space " اكثر من مرة فلازم اتجاهلها !

أتمنى ممن لدية اي فكرة عن شيء شبيه بهذا يفيدني و بسرعة

تم تعديل هذه المشاركة بواسطة صمت الفراشات في 26 أكتوبر 2012 في 21:22

#2

حسب ما فهمت وبدون تجريب

"Select * from users where fname + ' '+ mname+' '+lname+' '+famname +' ' like '%" & replace(serch_text.Text,"  "," ") & "%'"
1
#3

المشكلة التي لديك هي في موضوع المسافة space فالحل بان تستخدمي مبدأ Regular Expration اي ان يتم المرور على النص كلمة كلمة

ثم يتم وضع الناتج في متغير ، ومن ثم البحث عن نتائج هذا المتغير في قاعدة البيانات

مثال

اذا كان النص الاصلي هو : asem مسافة مسافة مسافة alemrany

فإن الناتج بعد عملية المرور تكون : asem alemrany

اتمنى تكون وضحت الفكرة.

تم تعديل هذه المشاركة بواسطة eng.asem في 28 أكتوبر 2012 في 15:31

1
#4
eng.asem كتب:

المشكلة التي لديك هي في موضوع المسافة space فالحل بان تستخدمي مبدأ Regular Expration اي ان يتم المرور على النص كلمة كلمة

ثم يتم وضع الناتج في متغير ، ومن ثم البحث عن نتائج هذا المتغير في قاعدة البيانات

مثال

اذا كان النص الاصلي هو : asem مسافة مسافة مسافة alemrany

فإن الناتج بعد عملية المرور تكون : asem alemrany

اتمنى تكون وضحت الفكرة.

اتوقع ممكن يكون حل

رح جربه هذه الطريقة

و برد بالنتيجة

شكرا لك أخي لمساعدتك ^^

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…