تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مساعدة في حل sqlite add datetime مشكلة
#1
لا يمكنني اضافة او عرض التاريخ في خانة التاريخ في الداتقريد فيو  مع قاعدة بيانات  sqlite مع اني مع الاكساس لا أجد مشكلة ممكن حل هدا الكود الدي استعمله

Public Sub Info_ETABLISSEMENTupdate()

        Dim cmd As New SQLiteCommand("Update Info_ETABLISSEMENT SET Email=@ADD_Email,année_ov=@année_ov ", conn2Acess2007)

        
        I cmd.Parameters.Add("@N_TEL", SqlDbType.VarChar).Value = InfoETABLISSEMENT.TextBox12.Text.Trim
        cmd.Parameters.Add("@ADD_Email", SqlDbType.VarChar).Value = InfoETABLISSEMENT.TextBox13.Text.Trim
        cmd.Parameters.Add("@année_ov", SqlDbType.DateTime2).Value = InfoETABLISSEMENT.DateTimePicker1.Value
الرد }}}
تم الشكر بواسطة:
#2
يجب أن تحدد السجل الذي تريد تحديثه وذلك من خلال WHERE (تمت إضافتها)
كود :
Public Sub Info_ETABLISSEMENTupdate()

   Dim cmd As New SQLiteCommand("Update Info_ETABLISSEMENT SET Email=@ADD_Email,année_ov=@année_ov Where N_TEL=@N_TEL", conn2Acess2007)


   cmd.Parameters.AddWithValue("@N_TEL", InfoETABLISSEMENT.TextBox12.Text.Trim)
   cmd.Parameters.AddWithValue("@ADD_Email", InfoETABLISSEMENT.TextBox13.Text.Trim)
   cmd.Parameters.AddWithValue("@année_ov", InfoETABLISSEMENT.DateTimePicker1.Value)
الرد }}}
تم الشكر بواسطة:
#3
نعم لكن المشكلة ليست في هدا الامر لكن في  نوع الخانة يعني مستحيل اقوم بغدخال نوع datatime  يمكنني ادخال اي نوع من البيانات لكن التاريخ لا يمكن هده المشكلة تحدت فقط مع قاعدة بيانات  sqlit ولا تحدت مع الاكسس يعني هدا السطر لا يمكن تنفيده واخال المعلومات في الداتا   cmd.Parameters.AddWithValue("@année_ov", InfoETABLISSEMENT.DateTimePicker1.Value)
الرد }}}
تم الشكر بواسطة:
#4
اذا التاريخ مع الوقت مع التاريخ استبدل هذا السطر
كود :
cmd.Parameters.AddWithValue("@année_ov", InfoETABLISSEMENT.DateTimePicker1.Value.ToString("yyyy-MM-dd HH:mm:ss", Globalization.CultureInfo.InvariantCulture))

وإذا أردت التاريخ فقط استبدل هذا السطر
كود :
cmd.Parameters.AddWithValue("@année_ov", InfoETABLISSEMENT.DateTimePicker1.Value.ToString("yyyy-MM-dd", Globalization.CultureInfo.InvariantCulture))
الرد }}}
تم الشكر بواسطة:
#5
انا لا أريد نوع البيانات  text بل اريدها  date  لاني ارتب الصفوف في الداتا حسب التاريخ كدلك مع الكريستال ربورت ممكن الكود لو سمحت
الرد }}}
تم الشكر بواسطة:
#6
شاهد الفيديو التالي
https://www.youtube.com/watch?v=nmOVzhR8...dex=3&t=0s



الرد }}}
تم الشكر بواسطة:
#7
لم اجد الحل شكرا لجميع الامشاركين
الرد }}}
تم الشكر بواسطة:
#8
إقتباس :
2.2. Date and Time Datatype
SQLite does not have a storage class set aside for storing dates and/or times. Instead, the built-in Date And Time Functions of SQLite are capable of storing dates and times as TEXT, REAL, or INTEGER values:
  • TEXT as ISO8601 strings ("YYYY-MM-DD HH:MM:SS.SSS").

  • REAL as Julian day numbers, the number of days since noon in Greenwich on November 24, 4714 B.C. according to the proleptic Gregorian calendar.

  • INTEGER as Unix Time, the number of seconds since 1970-01-01 00:00:00 UTC.
Applications can chose to store dates and times in any of these formats and freely convert between formats using the built-in date and time functions.

https://www.sqlite.org/datatype3.htm


و هناك دوال يمكنك من خلالها تحويل النص المحفوظ فى قاعدة البيانات الى تاريخ 
لتتعامل معه بالشكل المعتاد لديك 

إقتباس :Date And Time Functions
SQLite supports five date and time functions as follows:

  1. date(timestring, modifier, modifier, ...)

  2. time(timestring, modifier, modifier, ...)

  3. datetime(timestring, modifier, modifier, ...)

  4. julianday(timestring, modifier, modifier, ...)

  5. strftime(format, timestring, modifier, modifier, ...)


https://sqlite.org/lang_datefunc.html

او يمكنك ارفاق مثال للمشكلة لديك ليتم التطبيق عليه
الرد }}}
تم الشكر بواسطة:
#9
(02-08-18, 10:56 PM)annaba2015 كتب : لم اجد الحل شكرا لجميع الامشاركين


ضع مشروعك لمعرفة الحل للمشكلة
الرد }}}
تم الشكر بواسطة:
#10
(02-08-18, 09:06 PM)annaba2015 كتب : لا يمكنني اضافة او عرض التاريخ في خانة التاريخ في الداتقريد فيو  مع قاعدة بيانات  sqlite مع اني مع الاكساس لا أجد مشكلة ممكن حل هدا الكود الدي استعمله

Public Sub Info_ETABLISSEMENTupdate()

        Dim cmd As New SQLiteCommand("Update Info_ETABLISSEMENT SET Email=@ADD_Email,année_ov=@année_ov ", conn2Acess2007)

        
        I cmd.Parameters.Add("@N_TEL", SqlDbType.VarChar).Value = InfoETABLISSEMENT.TextBox12.Text.Trim
        cmd.Parameters.Add("@ADD_Email", SqlDbType.VarChar).Value = InfoETABLISSEMENT.TextBox13.Text.Trim
        cmd.Parameters.Add("@année_ov", SqlDbType.DateTime2).Value = InfoETABLISSEMENT.DateTimePicker1.Value


اخى الحبيب annaba2015

فى البداية بخصوص عمود الـ année_ov
حتى يتم ادخال بيانات الوقت والتاريخ فالاعتماد الرئيسي هو نوع العمود بقاعدة البيانات
لنقول انك معتمد ان نوع العمود هو وقت وتاريخ وتريد ان تقوم بالتالى

أذا كنت تريد ادخال التاريخ فقط تاتى بهذا السطر
كود :
       cmd.Parameters.Add("@année_ov", SqlDbType.DateTime2).Value = InfoETABLISSEMENT.DateTimePicker1.Value

واستبدله بالتالى
كود :
       cmd.Parameters.Add("@année_ov", SqlDbType.Date).Value = InfoETABLISSEMENT.DateTimePicker1.Value.ToString("MM-dd-yyyy")

اذا كنت تريد ان يكون الوقت والتاريخ كاملاً فقط اجعله بهذا الشكل
كود :
       cmd.Parameters.Add("@année_ov", SqlDbType.Date).Value = InfoETABLISSEMENT.DateTimePicker1.Value

أو
كود :
       cmd.Parameters.Add("@année_ov", SqlDbType.DateTime).Value = InfoETABLISSEMENT.DateTimePicker1.Value

تذكر ان يعتمد الامر على نوع العمود بقاعدة البيانات
فيجب الانتباه الى هذا الامر...

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: awidan76



التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم