MongoDB
 sql >> база данни >  >> NoSQL >> MongoDB

MongoDB разлика между код за грешка 11000 и 11001

Кодът 11001 не съществува в клона 2.5/2.6 на GitHub, така че ако опитвате версия 2.5, не можете да я създадете. Разгледах кода, но не мога да намеря път, който показва 11001 код или директно.

Следващите няколко реда ще покажат код 11001 :

db.so.drop();
db.so.insert( { foo: 5 } );
db.so.ensureIndex( { foo: 1 }, { unique: true } );
db.so.insert( { foo: 6 } );

Очакваните 11000 :

db.so.insert( { foo: 5 } );
E11000 duplicate key error index: test.so.$foo_1  dup key: { : 5.0 }

И сега, за да стигнете до 11001 :

db.so.insert( { foo: 6 } );
db.so.update( { foo: 6 }, { $set: { foo: 5 } } );
E11000 duplicate key error index: test.so.$foo_1  dup key: { : 5.0 }

Все още оригиналният 11000 , но:

db.getPrevError();
{
    "err" : "E11000 duplicate key error index: test.so.$foo_1  dup key: { : 5.0 }",
    "code" : 11001,
    "n" : 0,
    "nPrev" : 1,
    "ok" : 1
}

Че оригиналното текстово съобщение за грешка показва E11000 е грешка:https://jira.mongodb.org/browse/SERVER-5978



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Проверете състоянието на изпълняваните задания за намаляване на картата на MongoDB

  2. Има начин за налагане на референтна цялост в MongoDB

  3. Какво може да се направи с Mongo Aggregation / Изпълнение на Mongo Aggregation

  4. Съвети за планиране на схема на MongoDB

  5. Запитване за метаданни на MongoDB GridFS (Java)