MongoDB-তে new ISODate() ব্যবহার করে ডেট সেভ করা
MongoDB-তে ডেট সেভ করতে new ISODate() কনস্ট্রাক্টর ব্যবহার করা হয়। এটি ISO 8601 ফরম্যাটে ডেট সংরক্ষণ করে।
ধাপ ১: ডেটসহ ডকুমেন্ট ইনসার্ট করুন
> db.saveDateDemo.insertOne({"UserName":"John","UserLoginDatetime":new ISODate('2018-01-31 12:34:56')});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbd67d4de8cc557214c0e04") }
> db.saveDateDemo.insertOne({"UserName":"John","UserLoginDatetime":new ISODate('2019-02-01 04:01:10')});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbd67e8de8cc557214c0e05") }
> db.saveDateDemo.insertOne({"UserName":"John","UserLoginDatetime":new ISODate('2019-04-22 12:36:45')});
{ "acknowledged" : true, "insertedId" : ObjectId("5cbd6805de8cc557214c0e06") }
ধাপ ২: সব ডকুমেন্ট প্রদর্শন করুন
> db.saveDateDemo.find().pretty();
ফলাফল:
{
"_id" : ObjectId("5cbd67d4de8cc557214c0e04"),
"UserName" : "John",
"UserLoginDatetime" : ISODate("2018-01-31T12:34:56Z")
}
{
"_id" : ObjectId("5cbd67e8de8cc557214c0e05"),
"UserName" : "John",
"UserLoginDatetime" : ISODate("2019-02-01T04:01:10Z")
}
{
"_id" : ObjectId("5cbd6805de8cc557214c0e06"),
"UserName" : "John",
"UserLoginDatetime" : ISODate("2019-04-22T12:36:45Z")
}
ব্যাখ্যা:
new ISODate('YYYY-MM-DD HH:MM:SS')- UTC টাইমজোনে ডেট তৈরি করে- MongoDB ইন্টারন্যালি সব ডেট UTC-তে সংরক্ষণ করে (Z সাফিক্স = Zulu time = UTC)
new Date()ও ব্যবহার করা যায়, কিন্তুISODate()MongoDB-র নেটিভ টাইপ
বেস্ট প্র্যাকটিস:
- সর্বদা UTC-তে ডেট সংরক্ষণ করুন
- ক্লায়েন্ট সাইডে ইউজারের টাইমজোন অনুযায়ী কনভার্ট করে দেখান
- ISODate() কনস্ট্রাক্টর ব্যবহার করুন (new Date() এর চেয়ে স্পষ্ট)