Являются ли идентификаторы документов MongoDB уникальными для всей базы данных или только для этой коллекции? - PullRequest
0 голосов
/ 06 декабря 2018

Я использую MLab для размещения базы данных MongoDB для проекта node.js, над которым я работаю.Я хочу использовать идентификаторы, автоматически назначаемые документу, для идентификации конкретных документов в разных коллекциях.Мне было интересно, являются ли идентификаторы по умолчанию уникальными только в коллекции, в которой находится документ, или они уникальны во всей базе данных.

{
    "_id": { // <<<< this is what I'm talking about
        "$oid": "5c0754d8d0d1c81b400690a3"
    },
    "owned": [],
    "equipped": [],
    "prospects": [],
    "username": "Urist",
    "password": "dcddb75469b4b4875094e14561e573d8",
    "date": {
        "$date": "2018-12-05T04:32:24.690Z"
    },
    "trades": [],
    "__v": 0
}

1 Ответ

0 голосов
/ 06 декабря 2018

_id должно быть уникальным для одной коллекции.Необязательно, чтобы _id был уникальным для документов в другой коллекции или базе данных.

В https://docs.mongodb.com/manual/core/document/#field-names:

Имя поля _id зарезервировано для использования в качестве первичного ключа.;его значение должно быть уникальным в коллекции, неизменным и может быть любого типа, кроме массива.

...