البحث في أكثر من جدول عن طريق adoquery
#1
السلام عليكم ورحمة الله وبركاته
حياكم الله جميعا
كم استفدنا من هذا المنتدى الكثير الكثير ولا يسعنا الا الشكر مسبقا للمنتدى والقائمين عليه
السؤال:
عندي قاعدة بيانات آكسس وفيها خمس جداول ثلاثة أساسية للبحث فيها واثنان وهي عباره عن عدة كتب للبحث فيها بجدول واحد ونجحت العملية معي في البحث بجدول واحد ولكن عندما وضعت الجداول الأخرى بدأت المشاكل تظهر من عدم الاستجابة او البحث في الجدول الأول فقط.
أشكر لمن حل هذي المشكلة مقدما
إصدار الدلفي xe2
عمليات الاستعلام اللي ما نجحت معي هي:
بهذا الشكل:
كود :
SELECT tf1.nass, tf1.part, tf1.page, books.bkname, books.autname, books.sub, sowar.s_name FROM tf1, books ,sowar where tf1.nass1 like ('%'+(:nn)+'%') and tf1.bid = books.bid and tf1.sora = sowar.s_no UNION all SELECT tf2.nass, tf2.part, tf2.page, books.bkname, books.autname, books.sub, sowar.s_name FROM tf2, books ,sowar where tf2.nass1 like ('%'+(:nn)+'%') and tf2.bid = books.bid and tf2.sora = sowar.s_no UNION SELECT tf3.nass, tf3.part, tf3.page, books.bkname, books.autname, books.sub, sowar.s_name FROM tf3, books ,sowar where tf3.nass1 like ('%'+(:nn)+'%') and tf3.bid = books.bid and tf3.sora = sowar.s_no
وهذا رابط لبرنامج تجريبي عملته مخصص لهذه العملية:
كود :
http://www.mediafire.com/?73gjl9b6b4usdlk

مع العلم إني بحث كثير ولم أجد ما **** بارك الله فيكم
شاكر مقدما
الرد
#2
السلام عليكم ورحمة الله وبركاته
وجدت الحل ولكن هناك ما اعاقني في تكملة هذه الصفحة وهو عندما أضع المؤشر على السطر في الجدول المفروض يأتيني النص كاملا ولكن لا تأتي النص كاملا وهو عبارة عن صفحة
وهذا رابط التعديل على ماسبق والمشكلة التي بعدها
كود :
http://www.mediafire.com/?1l13bkhq6n1nbs0
بارك الله فيكم واحسن اليكم

وشاكر مقدما على الاجابة
الرد
#3
السلام عليكم

أعتقد أن الجداول التي تبحث فيها تختلف عن بعضها البعض من حيث الشكل..

إذا كان لديك مثلا جدول يضم المؤلف و العنوان بينما الجدول الآخر يضم المؤلف و العنوان و المترجم فإن عملية البحث سوف تتعثر

هذا الكود جربته في إحدى برامجي وقد نجح
كود :
SQL.text := (' SELECT * FROM [color=Red]science [/color]where author like'+ QuotedStr('%'+edit1.text+'%') + 'UNION SELECT * FROM [color=Red]french [/color]where author like'+ QuotedStr('%'+edit1.text+'%')+ 'UNION all SELECT * FROM [color=Red]English [/color]where author like'+ QuotedStr('%'+edit1.text+'%')+ 'UNION SELECT * FROM [color=Red]Islam [/color]where author like'+ QuotedStr('%'+edit1.text+'%') + 'UNION SELECT * FROM [color=Red]History [/color]where author like'+ QuotedStr('%'+edit1.text+'%') + 'UNION SELECT * FROM [color=Red]Mis [/color]where author like'+ QuotedStr('%'+edit1.text+'%')+ 'UNION SELECT * FROM [color=Red]Arabic [/color]where author like'+ QuotedStr('%'+edit1.text+'%') + 'UNION SELECT * FROM [color=Red]video [/color]where author like'+ QuotedStr('%'+edit1.text+'%') );
الرد
#4
السلام عليكم ورحمة الله وبركاته
بارك الله فيك أخي مبرمج هاوي واحسن الله اليك هذي الطريقة رأيتها في المنتدى قبل السؤال ويبدو أنك لم تفتح الرابط الثاني في هذه المشاركة فقد نجحت العملية معي دون إدراج كلمة QuotedStr والأمور صارت طيبة.
بالنسبة للحقول فهي متساوية في الكتب وأما الجداول فهي عبارة عن ربط علشان يجيبلي اسم الكتاب والمؤلف واسم السورة من الجدول الثالث أما الكتب فالحقول متساوية والصفحة عبارة عن حقل من نوع مذكرة وفي الميمو المفروض يجيبلي الحقل كامل على أنه صفحة وليس نص اي سطر ونصف تقريبا هنا تكمن المشكلة بارك الله فيك.
فقط افتح الرابط في الرد الثاني من هذه المشاركة وتصفح وسوف تعرف المشكلة وهي عدم ظهور الصفحة كاملة في الميمو كما هو المفروض يحصل.

شاكر لك وللجميع المشاركة والاجابة مقدما
الرد


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


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