#python #mongodb #pymongo
#python #mongodb #pymongo
Вопрос:
В проекте pymongo, над которым я работаю, в определенной коллекции я должен продолжать загружать имя и возраст людей, которые будут их вводить. Я должен идентифицировать их с помощью уникальных идентификаторов.
То, что я планирую сделать, это начать первый идентификатор с 1. При вставке данных я сначала читаю всю коллекцию, нахожу количество записей, а затем сохраняю свою запись со следующим идентификатором. (например. Я читаю и нахожу, что есть 10 записей, тогда идентификатор моей новой записи будет 11).
Но есть ли лучший способ сделать это?
Ответ №1:
MongoDB уже присваивает уникальный идентификатор каждому документу, который можно сортировать в порядке возрастания. Если вы не хотите это использовать, вы можете создать отдельную коллекцию, которая должна содержать только 1 документ с totalRecordsCount . И увеличивайте его каждый раз, когда вы добавляете новую запись и получаете последний номер перед добавлением новой записи. Это не лучший способ, но вы сможете избежать чтения всей коллекции.