| |||||||
| المدوّنات | البحث | مشاركات اليوم | اجعل كافة المشاركات مقروءة |
|
| | LinkBack | أدوات الموضوع |
| |||||
|
DATETIME لان عمرة اكثر من العام 2032، المبرمج المحترف هو ايضا مبرمج كسول ولا يريد ان يضغط على ازرار اكثر، فالحل هو ()NOW اي اذا كان الجدول اسمة topics وله الحقول (id,title,body,post_date) فتخزينة في الMySQL هو كود PHP: | |||||
|
| |||||
| اقتباس:
اخي هيلابي الا تعتقد ان احسن طريق هي تخزين الوقت بدالة time الموجودة في php لسهولة التحقق من الوقت ... دالة now الموجودة مع mysql تخزن الوقت بهذه الطريقة 2008-02-18 08:03:24 اعتقد ان هناك صعوبة في التحقق من الوقت بهذه الطريقة والله اعلم | |||||
|
| |||||
|
- اعتقد الافضل يكون حسب برنامج , احيانا تحتاج فقط السنه ولا تحتاج الوقت او العكس. - الافضل في الادء هو اصغرها حجما , بحيث لا يستهلك مساحه عند الفهرسه او التخزين ولا يستهلك موارد عن الترتيب( عباره order by). نجد ان TIMESTAMP هو اصغرها حجما ويحتوى على الوقت والتاريخ (4 بايت) MySQL AB :: MySQL 5.0 Reference Manual :: 9.5 Data Type Storage Requirements
__________________ I Love PHP (d4d@hotmail.com) http://www.daif.net/ | |||||
|
| |||||
| اقتباس:
ما قصدته انا, هو ان يتم تخزين الوقت عن طريق دالة كود PHP: كود: varchar(15) كود PHP: كود PHP: | |||||
|
| |||||
|
Nadorino معليش المرة هذة انا لا اوافقك في الرأي، الاسباب 1- الحقل varchar ماهو الا مجموعة من الاحرف characters اي اذا جعلته في هذة الحالة، يمكنك فقط اضهار المعلومة كما هي، بدون اي تعديلات 2- الحقل varchar العمليات الحسابية فيها بطيئة، لان الMySQL سيصعب عليه عملية البحث في ذالك الحقل و ايضا سيصعب علية عملية الترتيب، لان اكثر برامج قواعد البيانات تتعامل مع التواريخ بنظام الUNIX TIME وهو عدد الثواني من العام 1/1/1970. فاذا اردت مثلا ان تستعلم عن الواضيع بين تواربخ معينة، ستضطر اولا الى تخزين البيانات بهاذة الطريقة "اليوم-الشهر-السنة باربع ارقام" الحل انا مع الTIMESTAMP ولكن هذا فقط اذا تريد تخزين توقيت حدوث الامر او التاريخ اصدار المقالة مثلا، اما اذا تريد تخزين تاريخ في المستقبل، انا مع الDATETIME في هذة الحالة 1- لان الMySQL لا يحتاج لاي عمليات اضافية لكي يبحث على التاريخ المعين 2- الMySQL له عمليات ودوال عديدة تتعلق بالتاريخ، فلماذا لا تستخدمها خالد | |||||
|
| |||||
|
Timestamp هي الطريقة الأمثل لتخزين التاريخ والوقت بشكل كامل، يمكنك البحث ضمنها أيضاً بتحديد Range للوقت أو التاريخ الذي تبحث عنه .. مع الانتباه إلى رد الأخ ضيف حول طول البيانات المخزنة وتأثيرها على الأداء، هذا يعني أنه عليك دائماً اختيار الحل الأنسب لمشروعك .. كلام الأخوة جميل جداً ، وكل الردود مفيدة ما شاء الله ..لكن [سؤال] هل يتم تخزين Timestamp في حقل Integer ؟ لاني أستخدم Integer حالياً ولا أعلم إن كان سيحدث مشاكل في المستقبل .. ؟!تحياتي، أشرف السمهوري | |||||
|
| |||||
|
انا ارى ان انسب طريقة لتخزين التاريخ والوقت هو استخدام دالة time() ويكون حقلها في قاعدة البيانات int(11) طبعاً لما اخزنها بالـ time() اقدر بعدين اختار طريقة عرضي للتاريخ والوقت سواء هكذا 2\2\07 او 02\02\2007 او طرق كثيره هذا ماعندي
__________________ سبحان الله وبحمده ،، سبحان الله العظيم تذكر هذه الآيه قبل ان تشارك( مَا يَلْفِظُ مِن قَوْلٍ إِلَّا لَدَيْهِ رَقِيبٌ عَتِيدٌ) | |||||
|
| |||||
|
كما ذكرت وذكر hilaby بشكل مفصل الافضل هو ان يكون نوع الحقل TIMESTAMP ويمكن التحويل بسهوله الى عدد الثواني لكي تخرج الوقت ب date باستخدام دالة UNIX_TIMESTAMP(TIMESTAMP_field) الموجوده في Mysql نفسها , او استخدام FROM_TIMESTAMP(TIMESTAMP_field) لاعادتها بالتنسيق المطلوب مباشره . مثال كود PHP: كود PHP: - Nadorino, مبرمج إنترنت اطلاقا لا يمكن ان يكون تخزين timestamp في حقل varchar صحيح. الخلاصه: استخدم حقل TIMESTAMP لتخزين التاريخ والوقت في قاعدة البينات . هل هذا منصف ؟ ![]() ![]()
__________________ I Love PHP (d4d@hotmail.com) http://www.daif.net/ | |||||
|
| |||||
|
وليش تجنن نفسك مع PHP اذا MySQL تعطيك ماتريد، احد من تلك الخصائص هو: تحويل التاريخ الى الطريقة او الشكل اللذي تريدة مثال .. اذا اخدت الجدول articls وفيها الحقول (id,title,body,post_date) فيمكنك مثلا تحويل الناتج من عملية الاستعلام عن الحقل post_date بالشكل Friday 1st April 2005 بدون ان تكتب سطر واحد بالPHP الطريقة هو باستخدام DATE_FORMAT كود PHP: | |||||
|
| |||||
| ماذا عن التاريخ العربي التاريخ العربي غير مدعوم ... ماهو انسب جقل لتخزينه؟- ما افعله هو تخزين التاريخ الميلادي ومن ثم تحويله الى الهجري عن الطلب او العكس , لكن اعتقد ان عملي التحويل غير دقيقه 100%
__________________ I Love PHP (d4d@hotmail.com) http://www.daif.net/ | |||||
|
| |||||
|
أخي الكريم، أي نظام تأريخ يعتمد على الحساب والفلك يمكن التحويل منه وإليه نظرا للدقة المتناهية التي باتت ممكنة منذ أيام شعوب المايا ... لذا فإن اي نقطة مرجعية متفق عليها في أي نظام تأريخ كان يمكن إنطلاقا منها يقابلها من أنظمة التأريخ الأخرى Calendar Converter نستثني من ذلك التأريخ الهجري الشرعي والذي يعتمد على المشاهدة الشخصية والتي قد تخطئ أو تصيب، خصوصا في عصرنا الحالي حيث إبتعد الكثيرون عن حياة الفطرة وإنغمسنا أكثر فأكثر بحياة المدينة وضوضائها واضوائها، فبتنا لا نميز حق التمييز بين ظهور كوكب عطارد وهلال شهر رمضان الكريم، وطبعا لا يمكن إدخال هذا العامل غير الوثيق ضمن أي عملية حساب معروفة ودقيقة | |||||
|
| |||||
|
لان الحل الذي نوعه varchar مخصص لتخزين النصوص الصغيره و timestamp هو رقم يفترض ان يخزن في حقل رقمي وفي حالة الوقت فان هناك حل رقمي مخصص له وهو النوع timestamp نفسه , اتباع الحقول المناسبه في برنامجك يجعله اسرع وياخذ مساحة اقل .
__________________ I Love PHP (d4d@hotmail.com) http://www.daif.net/ | |||||
|
![]() |
| |
| |
| أدوات الموضوع | |
| |
المواضيع المتشابهه | ||||
| الموضوع | كاتب الموضوع | المنتدى | مشاركات | آخر مشاركة |
| ما حل مشكلة تغير الخطوط وتلخبط شكل الاستايلات في نسخة Explorer7 | البـ أحمد ـرنس | إصلاح وصيانة المنتديات | 5 | 11-06-2007 05:45 PM |
| نبي حل لمشكلة اكسبلور7 | raeed | إصلاح وصيانة المنتديات | 14 | 14-02-2007 10:40 AM |
| استفسار بسيط بخصوص تركيب قاعدة بيانات من نوع 3.0.6 على منتدى نوع 3.5.2 | GirL | إصلاح وصيانة المنتديات | 3 | 23-12-2005 07:54 PM |
| استشاره | الجابر | سوالف عامة | 5 | 01-09-2005 05:58 PM |
| كيف : حقل من نوع Text يكون Primary Key | Smart Solutions | PHP | 8 | 26-01-2005 05:02 PM |