![]() |
|
[سؤال] String was not recognized as a valid DateTime. - نسخة قابلة للطباعة +- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb) +-- قسم : قسم برمجة وتطوير المواقع (http://vb4arb.com/vb/forumdisplay.php?fid=51) +--- قسم : قسم ASP.NET (http://vb4arb.com/vb/forumdisplay.php?fid=52) +---- قسم : قسم اسئلة ASP.NET (http://vb4arb.com/vb/forumdisplay.php?fid=53) +---- الموضوع : [سؤال] String was not recognized as a valid DateTime. (/showthread.php?tid=346) |
RE: String was not recognized as a valid DateTime. - @@أبورائد@@ - 02-10-13 السلام عليكم ورحمة الله وبركاته إذا كان نوع lasttime هو Date أنت حددت tblasttime بأنه String وهذا خطأ لازم تحدده بـ Date عشان راح تحوله فيما بعد لـ String كود : Dim tblasttime As Dateجرب وأخبرني السلام عليكم ورحمة الله وبركاته RE: String was not recognized as a valid DateTime. - سعود - 02-10-13 بصراحة دخت وانا احول النوع بين datetime و nvarchar ماهو النوع المناسب اخوي ابو رايد . ![]() اريد كل انواع التاريخ واحد بالنسبة لكل الجداول يعني ايش رايك الانسب date or datetime طيب اخوي ابو رايد لو حطيت النوع datetime هل اريح مخي واستعلم بالكود التالي: كود : dim cm as new sqlcommand("",con)لان لو يمشي الحال بالنوع datetime بحيث يجلب احدث تاريخ ووقت بشكل صحيح معناته لقيت ضالتي مارايك؟ لان التجربة لاتكفي فقد اغتر بالنتيجة ظانا ان هذا المراد ثم بعد مدة مثل دخول شهر اخر اتفاجا ان السعادة كانت مجرد حلم. RE: String was not recognized as a valid DateTime. - @@أبورائد@@ - 02-10-13 السلام عليكم ورحمة الله وبركاته سألتني عن GETDATE وذكرت لك أنها قد تكون الأفضل وبهذا استخدم DateTime معها وهي تجلب الوقت والتاريخ معاً. ولكن في الاستعلام يجب التحويل بـ CDate ولا ترفقه نصاُ كما هو. الأفضل استخدام الـ Parameter فهو أفضل من الادراج مباشرة في sql كالتالي كود : Dim sql As String = "SELECT MAX(mtime) FROM [rdod] WHERE [mformid] = @mformid "السلام عليكم ورحمة الله وبركاته السلام عليكم ورحمة الله وبركاته يبدو أنه التبس عليك DateTime وDate التي في الفحوال بيسيك وأخرى في SQLServer في Visual Basic لا يوجد اختلاف بينهما فميكروسوفت اكتفت ب Date وهي تحتوي التارخ والوقت معاً في حين ما زالت DateTime القديمة موجودة. لكن في SQLServer فهما مختلفات ف DateTime تحتوي التاريخ والوقت في حين Date للتاريخ فقط وأيضاُ يوجد Time للوقت فقط وهي بنظام 24. لهذا أحببت التنويه.... السلام عليكم ورحمة الله وبركاته RE: String was not recognized as a valid DateTime. - سعود - 02-10-13 إقتباس :ولكن السؤال كيف سيكون التنسيق في tid.text ؟الـ tid.text هذا من نوع int يحمل رقم المنتدى لكي احصر نتيجة الاستعلام فقط بالمنتدى الحالي يعني الان الصفحة Default.aspx تحتوي div تحتضن عنصر تحكم ascx وهو بناء على القاريء كود : do while dr.readالمتغير او الاداة tid1 هي تحمل خصائص tid بعد تعميمها هذا الكلام في الصفحة الرئيسية بحدث تحميلها لكن العمل الان في حدث تحميل نفس عنصر تحكم frmnames.ascx و tid.text هي التي تحمل رقم المنتدى RE: String was not recognized as a valid DateTime. - @@أبورائد@@ - 02-10-13 السلام عليكم ورحمة الله وبركاته عفوا..... كان هناك خطأ في الرد السابق، فقد اعتقدت من كثرت ما نتكلم عن التاريخ ظننت أن tid.text هو تاريخ، تم التصحيح. السلام عليكم ورحمة الله وبركاته السلام عليكم ورحمة الله وبركاته طيب لماذا لا تستخدم DataAdapter بدلا من DataReader ؟ السلام عليكم ورحمة الله وبركاته RE: String was not recognized as a valid DateTime. - سعود - 02-10-13 ================================= طيب اخوي اخترنا نوع datetime بقيمته الافتراضية getdate طيب عند التحديث كيف نكتب الكود بحيث لايختلف عن تنسيق القاعدة؟ +++++++++++++++++++++ ايضا نتيجة الاستعلام هذا كود : cm.Parameters.AddWithValue("@mformid", Val(tid.text))**************************** ****************************** يعني الان نريد الاستعلام كود : Dim sql As String = "SELECT MAX(mtime) FROM [rdod] WHERE [mformid] = @mformid "كود : dim rdlasttime as datetime = cdate( cm.ExecuteScalar)هذا بالنسبة لاحدث رد وهل اخر زيارة للعضو نفس الكود اذ انه نفس النوع لكن المشكلة تحديث اخر الزيارة كيف نكتب كود للتحديث RE: String was not recognized as a valid DateTime. - @@أبورائد@@ - 02-10-13 السلام عليكم ورحمة الله وبركاته هناك أمر مهم قد صادفني سابقا عند تجربتي في عمل منتدى بـ ASP القياسية، وهو أنه عند اعتماد GETDATE يأخذ التاريخ والوقت للسرفر، ولكن المشكلة أن فارق التوقيت للسرفر ليس صفر أي ليس بتوقيت جرينتش GMT مما تسبب في مشاكل عند محاولة نقل قاعدة البيانات على سرفر آخر بفارق توقيت مختلف أيضاً. هناك أمر يحل المشكلة وهو بديل عن GETDATE ألا وهو GETUTCDATE ومنه تستطيع حساب الفارق الزمني لكل عضو مسجل بالمنتدى عن طريق الدالة DATEADD مع المعامل hour كالتالي لفارق التوقيت للسعودية مثلا كود : DATEADD( hour, 3, GETUTCDATE() )وبالنسبة لحفظ التوقيت في قاعدة البيانات فلا تقلق قم بحفظها بتوقيت GMT وعند العرض فقط يتم تطبيق فارق التوقيت. السلام عليكم ورحمة الله وبركاته السلام عليكم ورحمة الله وبركاته معليش، انا مشتت بعض الشيء، ممكن تكتب كود التحديث عشان استوعب طريقتك في الكود مع وصف كل حقل، راح أعطيك مثل يمكن يوضح كود : UPDATE [rdod] SET [mtime] = GETUTCDATE() WHERE [mformid] = @mformidالسلام عليكم ورحمة الله وبركاته RE: String was not recognized as a valid DateTime. - سعود - 02-10-13 كود : GETUTCDATE()هل هذي ضمن جملة الاستعلام ام ضمن كود فيجوال بيسك؟؟ يعني هل هي داخل علامة التنصيص؟ RE: String was not recognized as a valid DateTime. - @@أبورائد@@ - 02-10-13 (02-10-13, 12:22 PM)سعود كتب : السلام عليكم ورحمة الله وبركاته هذه دالة من دوال SQL يعني داخل جملة الاستعلام بدون علامات تنصيص فيه مشكلة عندي في الدخول للمنتدى أحياناً لا أستطيع الدخول أو الرجوع للصفحة السابقة غير أقفل المتصفح وانتظر وقت حتى استطيع الرجوع للمنتدى مع انه استطيع الدخول لجوجل بشكل سريع؟؟ السلام عليكم ورحمة الله وبركاته RE: String was not recognized as a valid DateTime. - سعود - 02-10-13 ممتاز .. الان باذن الله سابدا التعديلات اللازمة لكن فيه نقطة بسيطة وهي كيف اعدل على الكود التالي بحيث استخدم البارامترات كود : UPDATE [rdod] SET [mtime] = GETUTCDATE() WHERE [mformid] = @mformidماذا اكتب بدل mydate هنا كود : cmvisitors.Parameters.AddWithValue("@mtime", mydate) |