有一个代码:
const { MongoClient } = require('mongodb')
const db = MongoClient.connect('mongodb://172.17.0.2:27017/test')
db
.then(
async dataBase => {
eduDb = dataBase.db('edu-service-accounts')
const accounts = eduDb.collection('accounts')
await accounts.createIndex({ email: 1 }, { unique: true })
accounts.insertOne({ email: '123' })
}
)
上面的代码创建了一个索引,但这不是唯一的。我已经阅读了本机mongoDB驱动程序的官方文档,但无法处理它。是的,我在测试代码之前删除了所有旧的indexex。
有人可以显示一个真正创建独特索引的代码。我的意思是不是官方文档的一部分,或类似的东西 - 我需要有效的代码。注意:我使用本地db和mlab测试了该代码 - 结果相同。
就像文档说:db.createIndex(collectionname, index[, options], callback)
创建返回一个索引。尝试记录回调的结果。也许你从db中得到一个错误。
尝试类似的东西:
// your connection stuff
accounts.createIndex({ email: 1 }, { unique: true }, function(err, result) {
if(err) {
console.log(err);
} else {
console.log(result);
}
});
之后请提供日志。