delphi4arab منتديات دلفي للعرب
مشكل في الإستعلام - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : مشكل في الإستعلام (/showthread.php?tid=2999)



مشكل في الإستعلام - وليد - 14-04-2011

السلام عليكم
كتبت هذا الإستعلام لكي أحدد تواريخ معينة لكن المشكلة فيه أنه لا يعطيني نتائج صحيحة
فمثلا إذا جعلت التاريخ :01/01/2010 إلى 31/12/2010 الأمر عادي
لكن لو كتبت مثلا 02/11/2010 إلى 02/11/2010 لا يعطيني شي وحتى ولو زدت يوما فلا يعطيني شيئ رغم أنه يوجد في قاعدة البيانات تاريخ 02/11/2010 وإذا وضعت الإستعلام في قاعدة البيانات مباشرة فالنتيجة عادي لكن من خلال الدلفي تختل الأمور وهذا هو الإستعلام
كود :
procedure TForm2.MaskEdit2KeyPress(Sender: TObject; var Key: Char); begin if key =#13 then begin ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('SELECT ELECTEUR.NOM, ELECTEUR.PRENOM, ELECTEUR.DATENAISS, ELECTEUR.DATEINSC'); ADOQuery1.SQL.Add('FROM ELECTEUR'); ADOQuery1.SQL.Add('WHERE (((ELECTEUR.DATEINSC) Between #'+MaskEdit1.text+'# And #'+MaskEdit2.text+'#));'); ADOQuery1.Open; end; end; end.
علما أني وضعت هذا الإستعلام في الحدث onKeyPressللعنصر MaskEdit2
وقاعدة البيانات هي أكسس
بالتوفيق


مشكل في الإستعلام - kachwahed - 14-04-2011

وعليكم السلام ورحمة الله
كتوجيه عام في التعامل مع الاستعلامات...
بعد أن تتحقق أن الاستعلام صحيح بتجربته على برنامج إدارة قاعدة البيانات...
تحقق أن دلفي يرسله بالشكل المناسب!
في حالتك تأكد من العبارة التي يعيدها المكون TMaskEdit
أضف لعرض الاستعلام شي مثل:
كود :
[color=Blue]ShowMessage(ADOQuery1.SQL.Text);[/color] ADOQuery1.Open;
عند ظهور رسالة الاستعلام...
انسخ محتواها (Ctrl+C)
ألصقه في محرر استعلامات Access
احذف الزائد... ثم نفذ
بالتوفيق.



مشكل في الإستعلام - me_delphi - 14-04-2011

السلام عليكم

عند استعمال الرمز # في التاريخ فان Access يعتبره تاريخ انجليزي وان قمت بتسجيل التاريخ في قاعدة البيانات على الشكل الفرنسي فلا بد أن تحول شكل التاريخ الى الهيئة المناسبة قبل تنفيد الاستعلام.

بالتوفيق أخي وليد


مشكل في الإستعلام - وليد - 16-04-2011

السلام عليكم
أشكركم جميعا على التفاعل لكني لم أصل إلى حل مناسب
وفي المرفقاة المثال وفيه كل ما عملته حتى الآن
وللتوضيح فقط فقد وضعت عنصري MaskEdit لإدخال التاريخ المحدد ولكن عندما أدخل التاريخ من خلالهما يحدث المشكل أما لو كتبت الإستعلام في ADOQuery1 مباشرة مع كتابة التاريخ فإن الأمر عادي.
وأيضا الأخ kachwahed أقول لقد نسخت الإستعلام من الأكسس نفسه ولم أقم بكتابته بنفسي ولهذا فإن الخطأ في كتابة الإستعلام غير وارد ,أظن ذلك .
وفق الله الجميع.


مشكل في الإستعلام - kachwahed - 16-04-2011

هذا بسبب نمط التاريخ أكتب: 11/02/2010 عوضا عن 02/11/2010
استخدم TDateTimePicker أحسن.



مشكل في الإستعلام - n_alhetar - 16-04-2011

السلام عليكم

تم تعديل الكود وارفاق الملف

ياليت تجربة