منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
[VB.NET] البحث بالتاريخ بقاعدة البيانات - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم لغة الفيجوال بيسك VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=182)
+--- قسم : قسم اسئلة VB.NET (http://vb4arb.com/vb/forumdisplay.php?fid=183)
+--- الموضوع : [VB.NET] البحث بالتاريخ بقاعدة البيانات (/showthread.php?tid=23963)

الصفحات: 1 2


RE: البحث بالتاريخ بقاعدة البيانات - محمد اسماعيل - 24-02-18

(24-02-18, 01:41 AM)طالب برمجة كتب : اعتذر اليك للظرف السابق ذكره

لكن Between تأخذ تاريخين،
في النهاية يمكن بالبرمجة تحقيق ما تريد،

هذا الكود يعطيك ثلاث احتمالات

الاول
لو كتبت التاريخ كامل في مربع النص مثلا 23/2/2018
فسيصبح التاريخ الأول 23/2/2018 والتاريخ الثاني 23/2/2018 متطابقان
أي كانها ليست عملية بين تاريخين

الثاني
لو كتبت 2017 فيتم التعرف عليه على انه سنة
فسيصبح التاريخ الأول بداية السنة 1/1/2017 والتاريخ الثاني نهاية السنة 31/12/2017
هنا العملية بين تاريخين

الثالث
لو كتبت 29/5 وكانت السنة الحالية (2018) بدون كتابتها
فسيصبح التاريخ الأول 29/5/2018 والتاريخ الثاني 29/5/2018
أي انها نفس اليوم المحدد للسنة الحالية وكان العملية ليست بين تاريخين

PHP كود :
Dim d1 As Date Todayd2 As Date Todaytxt As String TextBox1.Text.Trim

If IsDate(txtThen
    d1 
CDate(txt)
 
   d2 CDate(txt)

ElseIf 
IsNumeric(txtAndAlso Val(txt) > 1900 Then
    d1 
= New Date(Val(txt), 11)
 
   d2 = New Date(Val(txt), 1231)

ElseIf 
txt.Split("/").Count 2 Then
    Dim s
() = txt.Split("/")
 
   d1 = New Date(Year(Today), Val(s(1)), Val(s(0)))
 
   d2 = New Date(Year(Today), Val(s(1)), Val(s(0)))

End If

Dim DataAdapter As New OleDbDataAdapter("SELECT * FROM TB1 WHERE DATENOW_TB BETWEEN @d1 AND @d2 "con)
DataAdapter.SelectCommand.Parameters.AddWithValue("@d1"d1)
DataAdapter.SelectCommand.Parameters.AddWithValue("@d2"d2)

DataSet1.Clear()
DataAdapter.Fill(DataSet1"TB1"

لا تثقل علي نفسك ظروفك تستدعي الراحة .

وفرج قريب انشاء اللّة بشفاؤها  .

لعل الأخاء بيننا يكبرني علي الاطمئنان علي مريضتك. Shy