У меня есть коллекция в монго, в которую я вставляю данные из Perl (используя MongoDb) и с mongoinsert. Проблема в том, что типы данных для чисел становятся непоследовательными.Вставка MongoDb (драйвер Perl) против несогласованности mongoimport
Например, из Perl, я:
$collection->insert({ _id => 1, value => "record 1" });
и у меня есть JSON-файл, который я импортировать с mongoimport, который содержит следующую строку:
{"_id":2,"value":"record 2"}
Теперь, если я делаю поиск по коллекции, я получаю:
> db.test.find()
{ "_id" : NumberLong(1), "value" : "record 1" }
{ "_id" : 2, "value" : "record 2" }
Есть ли способ заставить драйвер Perl вставить _i d как 32-битное число? или заставить mongoimport записать его как 64-битный (NumberLong)?
У вас есть другие предложения относительно того, как сохранить поле _id согласованным?
Большое спасибо за ваш ответ .. это прояснило для меня ... моя забота заключалась в том, что у меня есть дубликаты документов на _id, а одно из них - 32-битное целое, а другое - 64-битное целое число, и я предположил, что это может быть причиной ... –