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

نسخة كاملة : عندي استفسار بسيط
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
ياجماعه انا عندي مشكله بسيطه في الوقت انا عامل بحث بالوقت اكبر واصغر من و يساوي كلهم شغالين تمام الا ال between  مثلا انا ضفت
04:35 Am
10:00 Pm
أما اجي اقوله عايز الحق بين التاريخيه دول مش بيطلع نتيجه ولما اقوله
04:35 Am
ال هو التاريخ ال فوق بيبحث عادي يعني لازم اكتبله الدقيقه عشان يبحث من أن
04:00 Am
اصغر من التانيه المفروض بيحث ولكن مش عارف اي الغباء ده? ممكن تقولي اي الحل
السلام عليكم ورحمة الله وبركاته..


نوع قاعدة البيانات SQL..!؟

* عند استخدام جملة البحث في الفيجوال بيسك لنوع قاعدة البيانات SQL فان عملية البحث باستخدام BETWEEN لن تعمل ..

السبب ان قاعدة البيانات من نوع SQL عند حفظ التاريخ لعنصر ما فانه يحفظ حتى الوقت -ساعة - دقائق - ثانية - وانت اثناء عملية البحث تستخدم التاريخ فقط حتى لو وضعت الساعة تمام فلن تعمل 

يوجد طريقتين لحل المشكلة استخدمها من عدة طرق

الطريقة الاولى : تحويل الوقت الى نص STRING داخل جملة SELECT  ---  مثال على ذلك  select convert(varchar, getdate(), 3)  --- رقم 3 يعني تنسيق الوقت وهي 13/03/21

الطرية الثانية : افضل هذه الطريقة لانها تعمل بدون اي مشاكل وسهلة..

SELECT * FROM TAB WHERE D1 BETWEEN @Date1 AND @Date2

1 - تضع هذا الكود داخل sql استوردبروسيجر - Stored Procedure
@Date1 و @Date2 متغيرات نوع  Date

SELECT * FROM TAB WHERE D1 BETWEEN @Date1 AND @Date2

ثم تذهب الي الفجوال بسيك وتستدعي Stored Procedure حسب الاسم المختار .

والله الموفق ...