programing

MongoDB에서 컬렉션을 드롭하거나 삭제하려면 어떻게 해야 합니까?

css3 2023. 4. 5. 22:08

MongoDB에서 컬렉션을 드롭하거나 삭제하려면 어떻게 해야 합니까?

MongoDB에서 컬렉션을 삭제하는 가장 좋은 방법은 무엇입니까?

다음을 사용하고 있습니다.

db.collection.drop()

설명서에 설명된 대로:

db.collection.drop()

데이터베이스에서 컬렉션을 제거합니다.또한 이 메서드는 삭제된 컬렉션과 관련된 인덱스를 제거합니다.이 메서드는 drop 명령어 주위에 래퍼를 제공합니다.

하지만 어떻게 하면 명령줄에서 떨어뜨릴 수 있을까요?

따라서 다음 중 하나의 방법이 유효합니다.

mongo <dbname> --eval 'db.<collection>.drop()'
#     ^^^^^^^^            ^^^^^^^^^^^^

db.<collection>.drop()
#  ^^^^^^^^^^^^

예를 들어 컬렉션의 경우mycollection데이터베이스에서mydb다음과 같이 말할 수 있습니다.

mongo mydb --eval 'db.mycollection.drop()'

db.mycollection.drop()

이렇게 해서 완전히 테스트하고 데이터베이스를 만듭니다.mydb수집품을 가지고hello.

  • db 작성mydb:

    > use mydb
    switched to db mydb
    
  • 컬렉션을 작성mycollection:

    > db.createCollection("mycollection")
    { "ok" : 1 }
    
  • 모든 컬렉션을 표시합니다.

    > db.getCollectionNames()
    [ "mycollection", "system.indexes" ]
    
  • 몇 가지 더미 데이터를 삽입합니다.

    > db.mycollection.insert({'a':'b'})
    WriteResult({ "nInserted" : 1 })
    
  • 삽입되었는지 확인합니다.

    > db.mycollection.find()
    { "_id" : ObjectId("55849b22317df91febf39fa9"), "a" : "b" }
    
  • 컬렉션을 삭제하고 더 이상 존재하지 않는지 확인합니다.

    > db.mycollection.drop()
    true
    > db.getCollectionNames()
    [ "system.indexes" ]
    

이것도 동작합니다(데이터베이스와 컬렉션을 다시 작성하기 위한 것이므로 이전 명령을 반복하지 않습니다).

$ mongo mydb --eval 'db.mycollection.drop()'
MongoDB shell version: 2.6.10
connecting to: mydb
true
$

컬렉션을 삭제하려면users데이터베이스의mydb:

> use mydb
> db.users.drop()

사용할 수도 있습니다.

> db["collection-name"].drop()

컬렉션 이름에 '-'와 같은 특수 문자가 있을 때 유용합니다.

--eval "db.getCollection('collection').drop()"

언급URL : https://stackoverflow.com/questions/30948151/how-to-drop-or-delete-a-collection-in-mongodb