2019-04-15T02:03:54.409Z b87093d1-5f22-11e9-8d7b-525400681fe1 { Error: errCode: -502001 database request fail | errMsg: [FailedOperation.Insert] multiple write errors: [{write errors: [{WiredTigerIndex::insert: key too large to index, failing 1030
这个错误不是经常出现的,偶尔报这个错,什么意思呢
但我没有一次性写入多条记录啊,使用for循环一次写一个的
小程序端上传的数据格式是:
[
{name:成语1,字段1:数据1,字段2:数据2},
{name:成语1,字段1:数据1,字段2:数据2},
{name:成语1,字段1:数据1,字段2:数据2},
]
云函数代码如下:
for (let key in cy) {
let chengyu = cy[key]
if (chengyu && chengyu.name) {
var obj = await db.collection('chengyu')
.where({
name: chengyu.name
})
.update({
data: chengyu,
})
if (!obj.stats.updated) {
try {
obj = await db.collection('chengyu').add({
data: chengyu,
})
} catch (e) {
console.error(e)
}
}
}
}
没碰到过这种问题,也只能你自己根据错误提示去解决了
key不长啊,成语能有多长(顶多10几个字吧)
老哥 有空指导一下 https://developers.weixin.qq.com/community/develop/doc/0000685e6b0c88d6ba689d22b5b800