المشاركات : 36
المواضيع 13
الإنتساب : Mar 2016
السمعة :
0
الشكر: 0
تم شكره 41 مرات في 17 مشاركات
24-04-17, 03:16 AM
(آخر تعديل لهذه المشاركة : 24-04-17, 07:15 AM {2} بواسطة Ahmed_Mansoor.)
الاساتذة الافاضل:
الحمد لله وبفضله وبفضل معاونتكم فى هذا المنتدى الرائع - استطعت تحويل قاعدة البيانات اكسيس الى سكول سيرفر 2012 واستطعت بمساعدتكم ايضا الوصول لقاعدة البيانات واجراء كافة العمليات عليها - باستخدام فيجوال بيسك6
المشكلة :
وجدت حقل التاريخ بالشكل التالى :
'2017-02-22 00:00:00.000
وعند قيامى بالاستعلام عن التاريخ بالكود التالى :
If rs.State = adStateOpen Then rs.Close
rs.Open " Select * From table_name where date between #" & date1 & "# and #" & date2 & "#", db, adOpenKeyset, adLockPessimistic
يعطى رسالة خطأ كالتالى :
'# ' incorrect syntax near
اذن هل الخطأ فى ان التاريخ بهذا الشكل : 2017-02-22 00:00:00.000 وكيف يمكن التعديل فى data type فى سكول ؟
ام الخطأ فى الكود نفسه
اسف للاطالة واعذرونى لانى مازلت مبتدأ فى سكول سيرفر
لكم جميعا تحياتى
المشاركات : 2,008
المواضيع 58
الإنتساب : Oct 2014
السمعة :
1,005
الشكر: 31833
تم شكره 22865 مرات في 2187 مشاركات
أهلا أخي الكريم ، بالنسبة للإستعلام عن التاريخ في الإسكيوإل سيرفر فهو ليس كما الأكسس بالنسبة للتاريخ فقط ، في الأكسس إستخدم علامتي الـ # حول التاريخ في جملة الإستعلام ولكن في الإسكيوإل إستخدم علامة التنصيص المفرد ' يعني كأن حقل التاريخ حقل نصي وليس تاريخ ، جري وإن شاء الله خير .
المشاركات : 36
المواضيع 13
الإنتساب : Mar 2016
السمعة :
0
الشكر: 0
تم شكره 41 مرات في 17 مشاركات
(24-04-17, 03:16 AM)ahmed_egypt كتب : الاساتذة الافاضل:
الحمد لله وبفضله وبفضل معاونتكم فى هذا المنتدى الرائع - استطعت تحويل قاعدة البيانات اكسيس الى سكول سيرفر 2012 واستطعت بمساعدتكم ايضا الوصول لقاعدة البيانات واجراء كافة العمليات عليها - باستخدام فيجوال بيسك6
المشكلة :
وجدت حقل التاريخ بالشكل التالى :
'2017-02-22 00:00:00.000
وعند قيامى بالاستعلام عن التاريخ بالكود التالى :
If rs.State = adStateOpen Then rs.Close
rs.Open " Select * From table_name where date between #" & date1 & "# and #" & date2 & "#", db, adOpenKeyset, adLockPessimistic
يعطى رسالة خطأ كالتالى :
'# ' incorrect syntax near
اذن هل الخطأ فى ان التاريخ بهذا الشكل : 2017-02-22 00:00:00.000 وكيف يمكن التعديل فى data type فى سكول ؟
ام الخطأ فى الكود نفسه
اسف للاطالة واعذرونى لانى مازلت مبتدأ فى سكول سيرفر
لكم جميعا تحياتى
شكرا على التوضيح وقمت بالتعديل التالى:
rs.Open " Select * From table_name where date between ' date1' and ' date2' ", db, adOpenKeyset, adLockPessimistic
اعطى رساله خطأ كالتالى :
'& ' incorrect syntax near
المشاركات : 2,008
المواضيع 58
الإنتساب : Oct 2014
السمعة :
1,005
الشكر: 31833
تم شكره 22865 مرات في 2187 مشاركات
أهلا أخي الكريم ، هذا تعديل جملة الإستعلام :
PHP كود :
If rs.State = adStateOpen Then rs.Close rs.Open " Select * From table_name where date between '" & date1 & "' and '" & date2 & "'", db, adOpenKeyset, adLockPessimistic
المشاركات : 36
المواضيع 13
الإنتساب : Mar 2016
السمعة :
0
الشكر: 0
تم شكره 41 مرات في 17 مشاركات
رسالة خطأ Run time erro
the conversation of a varchar data type to a datetime data type resulted in an out-of-range value
تظهر تلك الرسالة عند تنفيذ التعديل الجديد والذى تفضلت حضرتك بارساله لى -
واذكر حضرتك اننى محول قاعدة البيانات من اكسيس الى سيكول سيرفر وان التاريخ يظهر فى السكول بتلك الصورة :
2017-02-22 00:00:00.000
فهل data type فى اكسيس ( date time) غير متوافقة مع data type فى سكول ؟
وكيف اجعل التاريخ يظهر بشكل عادى بدون 00:00:00.000
اشكر تعاونكم وسعه صدوركم
المشاركات : 2,008
المواضيع 58
الإنتساب : Oct 2014
السمعة :
1,005
الشكر: 31833
تم شكره 22865 مرات في 2187 مشاركات
أهلا أخي الكريم , الرسالة تقول تحويل النص إلى تاريخ جاب نتيجة خارج النطاق , لذلك تقدر تتحكم في تنسيق التاريخ عن طريق الدالة Convert من داخل جملة الإستعلام نفسها , جرب هذا التعديل حيث سيتم تحويل القيم الذي تبحث بها إلى نوع تاريخ داخل جملة الإستعلام حيث الرقم 121 يحول التاريخين الذي ستبحث بها إلى تواريخ بتنسيق YYYY-MM-DD .
PHP كود :
If rs.State = adStateOpen Then rs.Close rs.Open " Select * From table_name where date between convert(datetime,'" & date1 & "',121) and convert(datetime,'" & date1 & "',121)", db, adOpenStatic, adLockPessimistic
المشاركات : 36
المواضيع 13
الإنتساب : Mar 2016
السمعة :
0
الشكر: 0
تم شكره 41 مرات في 17 مشاركات
(25-04-17, 09:14 AM)Ahmed_Mansoor كتب : أهلا أخي الكريم , الرسالة تقول تحويل النص إلى تاريخ جاب نتيجة خارج النطاق , لذلك تقدر تتحكم في تنسيق التاريخ عن طريق الدالة Convert من داخل جملة الإستعلام نفسها , جرب هذا التعديل حيث سيتم تحويل القيم الذي تبحث بها إلى نوع تاريخ داخل جملة الإستعلام حيث الرقم 121 يحول التاريخين الذي ستبحث بها إلى تواريخ بتنسيق YYYY-MM-DD .
PHP كود :
If rs.State = adStateOpen Then rs.Close rs.Open " Select * From table_name where date between convert(datetime,'" & date1 & "',121) and convert(datetime,'" & date1 & "',121)", db, adOpenStatic, adLockPessimistic
للأسف اعطتنى نفس الرسالة
للأسف نفس الرسالة :
Run time erro
the conversation of a varchar data type to a datetime data type resulted in an out-of-range value
استاذنا الفاضل :
وضع علامات التنصيص المفردة حول حقل التاريخ هذا يعنى اننا قمنا بتحويل التاريخ الى نص والان لماذا نحاول العكس تحويل النص الى تاريخ ؟ والله انا فى غايه الحرج من حضرتك -لأنى تعبك معايا فارجو المعذرة - لانى اريد الاستفادة من حضرتك .
المشاركات : 60
المواضيع 0
الإنتساب : Apr 2017
السمعة :
7
الشكر: 98
تم شكره 105 مرات في 75 مشاركات
ضع date1 وdate2 في دالة CDate لتحويلها من نص الى تاريخ
وذلك لتتأكد من أن صيغتها مقبولة كتاريخ
واذا ظهر فيها خطأ التحويل فحينها تعرف سبب المشكلة وتتخذ الاجراءات اللازمة لتلافيها.
المشاركات : 36
المواضيع 13
الإنتساب : Mar 2016
السمعة :
0
الشكر: 0
تم شكره 41 مرات في 17 مشاركات
اولا: جزاكم الله كل خير ويكفينى ان حضرتكم متابعين معى المشكلة وخاصة من الاستاذ المحترم / احمد منصور
ثانيا : بخصوص المشكله للاسف لم اصل لحل لها - ولا استطيع ان اطالبكم باكثر من ذلك -
اشكركم جميعا منتدى فعلا محترم بمشرفيه واعضائه
المشاركات : 47
المواضيع 12
الإنتساب : Jul 2015
السمعة :
2
الشكر: 0
تم شكره 474 مرات في 16 مشاركات
للاسف حصل معايا نفس المشكلة ومش لاقى حل
|