الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في ادخال الوقت في قاعدة البيانات اكسس

بدأه 8520 في 3 أغسطس 2008 · 7 رد · 2,048 مشاهدة · في ADO.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

اخوتي الاعزاء قبل مايقارب شهر كنت دلخ ( غبي) في قواعد البيانات والان وبفضل هذا المنتدى ومن به من اعضاء بعد الله اصبح اطق طق عليها والوضع ماشي ولكن صادفتني مشكله وحاب اعرضها لكم لعل احد عنده افاده وهي :

اولا انا برنامجي هو عباره عن وضع اوقات المواعيد في قاعدة بيانات

فوضعت في قاعدة البيانات حقل وخاصيته خاصية الوقت والتاريخ ولكن هي انه عندما اضيف الوقت عن طريق الكود في برنامج الفيجوال البيسك فانه يضاف الوقت الذي ادخلته ولكن لايقبل تحديد الوقت اهو مساءا ( م ) او صباحا (ص )

فيعني عندما ادخل في جملة الاستعلام العبارة التالية :

#10:30:00 م# يظهر خطأ بأن جملة الاستعلام فيها خطأ ولكن اذا كتبتها كالتالي

#10:30:00 # فانه يقبل ذلك بدون مشاكل وفي قاعدة البيانات تسجل الوقت الذي ادخلتته افتراضيا صباحي اي انني بعد ان ادخل الوقت السابق فان قاعدة البيانات تقبله على انه في الصباح فيصبح الوقت في قاعدة البيانات مسجل كالتالي

#10:30:00 ص#

وهذا الكود الذي كتبته ولكن قبل كل شي انا قبل لا اعرض المشكله حاولت جميع الافكار التي اعرفها حتى اني اكتشفت حل دايخ يعني ماله داعي وهو اني بعد تسجيل الوقت استخدم جملة الاستعلام الخاصه بالتعديل وابشركم هذا نفع وقدرت اغير الصباح (ص) الى مساء ( م ) ولكن حل دايخ مثل ماتشوفون هذا الكود بدون تحديد وقت وهو اللي ماعليه مشكله مثل ماقلتلكم

Conn.Open()
 MyCmd.Connection = Conn
MyCmd.CommandType = CommandType.Text
MyCmd.CommandText = "INSERT INTO Taibl(m,tim)" & " VALUES('" & TextBox1.Text & "',#5:30:00#)"
MyCmd.ExecuteNonQuery()
Conn.Close()

ولكم جزيل الشكر واسف على التطويل

8520

تم تعديل هذه المشاركة بواسطة 8520 في 3 أغسطس 2008 في 07:49

#2

اخي ان جعلت النوع تاريخ ووقت فانه سيقبل مجرد ارقام ولن تستطيع ادراج الحرف ، ولكن ان اردت ان تضيف صباحا او مساءً عليك بتحويل النوع الى nvarchar والله اعلم

#3

الله يعطيك العافيه يا طائر العنقاء لكن انا اعتقد ان الحقل الذي نوعه تاريخ ووقت يستقبل التحديد سواءا مساءا ام صباحا بدليل ان الحقل يوم تسجل فيه وقت يحدد القيمه سواءا مساءا او صباحا في قاعدة البيانات

ثانيا مامعنى كلمة nvarchar لاني بصراحه دايخ في الانجليزي

ولك الشكر مجددا

وننتظر لعل احد من الاخوه تكون عنده طريقه تفيدنا

#4

السلام عليكم

لو عايز تخزن الوقت بس مفيش داعي لاستخدام DateTime

استخدم حقلlong أو int والافضل استخدام نظام 24 ساعة

يعني اقصد باستخدام int بفرض ان الساعة 3:30 PM خزنها علي انها 1530 يعين اضرب في ميه و استخدم نظام 24 ساعة

لو محتاج تستخرج الوقت فقط او التاريخ من DateTime ممكن تستخدم الكود التالي

SELECT dateonly = CONVERT(CHAR(8),dt,112) FROM SomeTable 
SELECT timeonly = CONVERT(CHAR(8),dt,8) FROM SomeTable

بحيث ان dt الحقل الذي يحتوي علي التاريخ

بالنسبة nvarchar نوع بيانات نصي متغير في ال sql server و ليس Access

حاول تتعرف كويس علي ال Data Types

اقتباس
#10:30:00 ص#

ملحوظة و انت بتقارن الوقت لا تستخدم اللغة العربية

يعني #10:30:00 AM#

يوجد في sql server 2008 و اظن في access 2007 نوع بيانات Time

#5

أخوي AhmedElbaz

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

SELECT dateonly = CONVERT(CHAR(8),dt,112) FROM SomeTable 
SELECT timeonly = CONVERT(CHAR(8),dt,8) FROM SomeTable

هل هي جمل استعلام ام ماذا لاني حاولت ادخلها على انها جمل استعلام لاتقبل ذلك

ثانيا: هل فيه موضوع تكلم عن Data Types

ولك الشكر مجددا

#6
اقتباس
هل هي جمل استعلام ام ماذا لاني حاولت ادخلها على انها جمل استعلام لاتقبل ذلك

انا اتكلم عن sql server و ما ادري انت شغال Access و لا SQL

اقتباس
هل فيه موضوع تكلم عن Data Types

ابحث عن sql server data types او access data types

#7

مشكور على الرد AhmedElbaz انا استخدم الاكسس وليس ال SQL server ولو نظرت الى عنوان الموضوع اللي انا كاتبه ( مشكلة في ادخال الوقت في قاعدة البيانات اكسس) يعني حدث معنا سوء فهم ولك الشكر على ردك يابطل

أخوكم 8520

#8

اسف علي سوء الفهم

علي العموم انا مليش في الاكسس

بس اظن ان الاكسس بيخزن الdateTime علي هيئة decimal التاريخ بيكون الرقم و الوقت بيكون الكسر

شوف انت ممكن لو حولته الي int يديك التاريخ

شوف اللينك ده

اظن وجود دوال في الاكسس مثل year , month , day, hour ,minute,second

بالتوفيق

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…