db.getCollection()
정의
db.getCollection(name)
db.<collectionName>
구문 사용과 기능적으로 동일한 컬렉션 또는 뷰 객체 를 반환합니다. 이 메서드는mongosh
로_
시작하거나 데이터베이스 메서드 와 일치하는 이름과 같이 자체와 상호 작용 수 있는 이름을 가진 컬렉션 또는 뷰에 유용합니다.shelldb.getCollection()
메서드에는 다음과 같은 매개변수가 있습니다.Parameter유형설명name
문자열컬렉션의 이름입니다.
행동
db.getCollection()
객체는 모든 컬렉션 메서드에 액세스할 수 있습니다.
지정된 컬렉션은 서버에 존재할 수도 있고 존재하지 않을 수도 있습니다. 컬렉션이 존재하지 않는 경우, MongoDB는 db.collection.insertOne()
과 같은 쓰기 작업의 일부로 컬렉션을 암시적으로 생성합니다.
예시
다음 예시에서는 db.getCollection()
을 사용하여 auth
컬렉션에 액세스하고 여기에 문서를 삽입합니다.
var authColl = db.getCollection("auth") authColl.insertOne( { usrName : "John Doe", usrDept : "Sales", usrTitle : "Executive Account Manager", authLevel : 4, authDept : [ "Sales", "Customers"] } )
이렇게 하면 다음이 반환됩니다.
{ "acknowledged" : true, "insertedId" : ObjectId("569525e144fe66d60b772763") }
이전 예시 에서는 db.getCollection("auth")
데이터베이스 메서드 와의 이름 충돌로 인해 을 사용해야 합니다.db.auth()
삽입 작업을 수행하기 위해 db.auth
를 직접 호출하면 db.auth()
메서드를 참조하여 오류가 발생합니다.
다음 예에서는 db.getCollection()
메서드를 사용하지 않고 동일한 작업을 시도합니다.
db.auth.insertOne( { usrName : "John Doe", usrDept : "Sales", usrTitle : "Executive Account Manager", authLevel : 4, authDept : [ "Sales", "Customers"] } )
db.auth()
메서드에 insertOne
메서드가 없어서 작업 오류가 발생했습니다.