অ্যাক্টিভেকর্ডে বিভিন্ন তারিখ / সময় ফর্ম্যাটগুলির মধ্যে পার্থক্যটির সাথে রেইলগুলি এবং আপনি যে কোনও ডাটাবেস ব্যবহার করছেন তার সাথে কিছুই করার নেই।
একটি উদাহরণ হিসাবে মাইএসকিউএল ব্যবহার (অন্য কোন কারণ কারণ এটি সবচেয়ে জনপ্রিয় জন্য হলে), আপনি DATE, DATETIME, TIMEএবং TIMESTAMPকলাম ধরনের তথ্য; আপনি ঠিক যেমন CHAR, VARCHAR, FLOATএবং INTEGER।
সুতরাং, আপনি জিজ্ঞাসা, পার্থক্য কি? ঠিক আছে, তাদের মধ্যে কিছু স্ব-ব্যাখ্যামূলক। DATEকেবল একটি তারিখ সঞ্চয় করে, TIMEকেবল দিনের একটি সময় DATETIMEসঞ্চয় করে , যখন উভয়ই সঞ্চয় করে।
মধ্যে পার্থক্য DATETIMEএবং TIMESTAMPএকটি বিট আরো সূক্ষ্ম হল: DATETIMEযেমন ফর্ম্যাট করা হয়েছে YYYY-MM-DD HH:MM:SS। বৈধ রেঞ্জ বছর 9999 (এবং এর মধ্যে সব কিছু বছর 1000 থেকে যান। যদিও TIMESTAMP সৌন্দর্য অনুরূপ যখন আপনি ডাটাবেস থেকে এটা আনা, সত্যিই এটি একটি মাত্র একটি ফ্রন্ট এর UNIX টাইমস্ট্যাম্প । তার বৈধ ব্যাপ্তির 1970 থেকে 2038. পার্থক্য যায় এখানে ডাটাবেস ইঞ্জিনের বিভিন্ন বিল্ট-ইন ফাংশনগুলি বাদে স্টোরেজ স্পেস রয়েছে। কারণ DATETIMEবছর, মাসের দিন, ঘন্টা, মিনিট এবং সেকেন্ডে প্রতিটি ডিজিট সংরক্ষণ করে এটি মোট 8 বাইট ব্যবহার করে AsTIMESTAMP শুধুমাত্র সংখ্যা সঞ্চয় করে 1970-01-01 থেকে সেকেন্ডের মধ্যে এটি 4 বাইট ব্যবহার করে।
আপনি এখানে মাইএসকিউএলে সময়ের ফর্ম্যাটগুলির মধ্যে পার্থক্য সম্পর্কে আরও পড়তে পারেন ।
শেষের দিকে, এটি আপনার তারিখ / সময় কলামটি করতে হবে তা নেমে আসে। আপনার কি 1970 এর আগে বা 2038 এর পরে তারিখ এবং সময় সংরক্ষণ করতে হবে? ব্যবহার DATETIME। আপনার কি ডাটাবেস আকার সম্পর্কে চিন্তা করতে হবে এবং আপনি সেই সময়ের ব্যবস্থার মধ্যে রয়েছেন? ব্যবহার TIMESTAMP। আপনার কি কেবল একটি তারিখ সংরক্ষণ করা দরকার? ব্যবহার DATE। আপনার কি কেবল একটি সময় সঞ্চয় করতে হবে? ব্যবহার TIME।
এই সমস্ত কিছু বলার পরে, রিয়েলগুলি আসলে আপনার জন্য এই কয়েকটি সিদ্ধান্ত নেয় । উভয় :timestampএবং :datetimeডিফল্ট করবে DATETIME, যখন :dateএবং :timeঅনুরূপ DATEএবং TIMEযথাক্রমে।
এর অর্থ হ'ল রেলের মধ্যেই আপনাকে কেবল সিদ্ধান্ত নিতে হবে যে আপনাকে তারিখ, সময় বা উভয় সংরক্ষণ করতে হবে কিনা।