只是爲了確保我的理解正確的話,你要買一個新的「日期」字段更新您的集合中的每個文件,或者你只是希望添加當前插入新文檔的日期?
給定一個集合(截斷簡潔)像下面這樣:
> db.students.find()
{ "_id" : 1, "name" : "Joe" }
{ "_id" : 2, "name" : "Jane" }
{ "_id" : 3, "name" : "Sam" }
>
一個日期可能被添加到每個文檔集合在一個更新語句,像這樣:
> db.students.update({}, {$set:{"Date": new Date()}}, false, true)
> db.students.find()
{ "Date" : ISODate("2012-04-10T15:06:34.608Z"), "_id" : 1, "name" : "Joe" }
{ "Date" : ISODate("2012-04-10T15:06:34.608Z"), "_id" : 2, "name" : "Jane" }
{ "Date" : ISODate("2012-04-10T15:06:34.608Z"), "_id" : 3, "name" : "Sam" }
>
的傳遞給更新函數的false和true值表示upsert = false和multi = true。更多關於這方面的信息可以在蒙戈文檔中找到的update()函數: http://www.mongodb.org/display/DOCS/Updating#Updating-update%28%29
要一個新的Date對象添加到新的文件,因爲它們添加到集合中,只需創建一個新的Date對象的時候,文件保存:
> db.students.save({ "_id" : 4, "name" : "Chris", "Date":new Date()})
> db.students.find()
{ "Date" : ISODate("2012-04-10T15:06:34.608Z"), "_id" : 1, "name" : "Joe" }
{ "Date" : ISODate("2012-04-10T15:06:34.608Z"), "_id" : 2, "name" : "Jane" }
{ "Date" : ISODate("2012-04-10T15:06:34.608Z"), "_id" : 3, "name" : "Sam" }
{ "_id" : 4, "name" : "Chris", "Date" : ISODate("2012-04-10T15:12:03.161Z") }
>
當Java腳本創建一個Date對象,沒有值傳遞到構造函數,它將創建與當前UTC(通用,或GMT)時間的日期對象。該Java腳本日期對象的更多信息可以在這裏找到: http://www.w3schools.com/jsref/jsref_obj_date.asp
不同的語言處理日期不同,所以要根據其語言的應用程序是用的,你必須檢查它是如何實現的日期是語言的文檔目的。
希望這會讓你指出正確的方向。
謝謝你的回答。我是MongoDb的新手。我想要這個, 我想要這個, > db.students.save({「_id」:4,「name」:「Chris」}) > db.students.find() {「Date」: ISODate(「2012-04-11T09:56:34.608Z」),「_id」:1,「name」:「Joe」} 它看起來像觸發器或默認當前日期爲每個新記錄 – icmeyecektim 2012-04-11 06:54:03
啊。我想我明白。 「_id」是Mongo自動添加到新文檔的唯一字段。如果您希望將「日期」字段添加到新文檔中,則必須通過應用程序完成。 – Marc 2012-04-13 15:05:45
是的,我明白了。非常感謝Marc – icmeyecektim 2012-04-17 12:40:54