Latest web development tutorials

MongoDB의 문서가 업데이트됩니다

MongoDB를갱신 () 및 저장 ()메소드를 사용하여 문서의 컬렉션을 업데이트합니다. 의 응용 프로그램에서 자세한 모양과 두 기능 사이의 차이를 보자.


업데이트 () 메소드

업데이트 () 메서드는 기존 문서를 업데이트하는 데 사용됩니다. 다음 구문은 다음과 같습니다

db.collection.update(
   <query>,
   <update>,
   {
     upsert: <boolean>,
     multi: <boolean>,
     writeConcern: <document>
   }
)

매개 변수 설명 :

  • 쿼리는 SQL 업데이트 쿼리 내부 후면에 비슷한 업데이트 쿼리 기준.
  • 업데이트 : 업데이트 개체 및 등으로도 이해 될 수있다 (예 : $, $ INC ...)을 새로운 사업자의 몇 백은 SQL 업데이트 쿼리 내에서 설정
  • upsert : 선택,이 인수를 의미하는 것은 더 레코드 업데이트가없는 경우, 삽입 objNew이 참 삽입되어 있다는 것입니다, 기본은 거짓, 삽입되지 않았습니다.
  • 멀티 : 선택, MongoDB를 기본이 인수가 모든 업데이트를 확인 많은 기록을내는 조건에 따라, 해당하는 경우에만, 첫 번째 레코드 업데이트 찾기 위해, false입니다.
  • writeConcern : 옵션 수준의 예외가 발생합니다.

우리는 다음과 같은 데이터 수집 COL 삽입 :

>db.col.insert({
    title: 'MongoDB 教程', 
    description: 'MongoDB 是一个 Nosql 数据库',
    by: '本教程',
    url: 'http://www.w3big.com',
    tags: ['mongodb', 'database', 'NoSQL'],
    likes: 100
})

그 다음 우리는 업데이트 () 메소드 (제목)으로 제목을 업데이트해야합니다 :

>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}})
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 })   # 输出信息
> db.col.find().pretty()
{
        "_id" : ObjectId("56064f89ade2f21f36b03136"),
        "title" : "MongoDB",
        "description" : "MongoDB 是一个 Nosql 数据库",
        "by" : "本教程",
        "url" : "http://www.w3big.com",
        "tags" : [
                "mongodb",
                "database",
                "NoSQL"
        ],
        "likes" : 100
}
>

당신은 원래 "MongoDB를 자습서"업데이트에서 타이틀 (제목)를 볼 수있다 "MongoDB를."

같은 문서를 편집 할 경우 위의 문장은, 첫 번째에있는 문서를 수정하고 더, 당신은 참으로 여러 매개 변수를 설정해야합니다.

>db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}},{multi:true})

() 메소드를 저장

기존의 문서를 대체하는 문서를 전달하여 () 메소드를 저장합니다. 다음 구문은 다음과 같습니다

db.collection.save(
   <document>,
   {
     writeConcern: <document>
   }
)

매개 변수 설명 :

  • 문서 : 문서 데이터.
  • writeConcern : 옵션 수준의 예외가 발생합니다.

다음의 예 우리는 56064f89ade2f21f36b03136 문서 데이터로 _id를 대체 :

>db.col.save({
	"_id" : ObjectId("56064f89ade2f21f36b03136"),
    "title" : "MongoDB",
    "description" : "MongoDB 是一个 Nosql 数据库",
    "by" : "w3big",
    "url" : "http://www.w3big.com",
    "tags" : [
            "mongodb",
            "NoSQL"
    ],
    "likes" : 110
})

교체에 성공 후, 우리는 () 찾기로 교체 한 후 데이터를 볼 수 명령을 할 수

>db.col.find().pretty()
{
        "_id" : ObjectId("56064f89ade2f21f36b03136"),
        "title" : "MongoDB",
        "description" : "MongoDB 是一个 Nosql 数据库",
        "by" : "w3big",
        "url" : "http://www.w3big.com",
        "tags" : [
                "mongodb",
                "NoSQL"
        ],
        "likes" : 110
}
> 

더 많은 예제

첫 번째 레코드를 업데이트 :

db.col.update ({ "계산": {$에있다 : 1}}, {$ 설정 : { "TEST2": "OK"를}});

모든 업데이트 :

db.col.update ({ "계산": {$에있다 : 3}}, {$ 설정 : { "TEST2": "OK"를}}, 허위 사실);

첫 번째 추가

db.col.update ({ "계산": {$에있다 : 4}}, {$ 설정 : { "test5": "OK"를}}, 참, 거짓);

모든 추가 추가 :

db.col.update ({ "계산": {$에있다 : 5}}, {$ 설정 : { "test5": "OK"를}}, 사실, 사실);

모든 업데이트 :

db.col.update ({ "계산": {$에있다가 15}}, {$ INC : { "수": 1}}, 허위 사실);

첫 번째 레코드를 업데이트 :

db.col.update ({ "계산": {$에있다가 10}}, {$ INC : { "수": 1}}, 거짓, 거짓);