无法使用批处理将数据写入 leveldb 文件
Not able to write data into a leveldb file using batch
我刚开始学习 level.db 使用 node.js
中的关卡模块
var level = require('level')
var db = level('batch.db', { valueEncoding: 'json' })
var batch = []
for (var i = 0; i < 10; i++) {
batch.push({ key: 'n' + i, value: i*1000 })
}
db.batch(batch, function (err) {
if (err) console.error(err)
})
但是这段代码给了我以下内容ERROR
错误 [WriteError]:type
必须是 'put' 或 'del'
在 C:\Users\mathe\Desktop\levelDB-and-Crypto\node_modules\level-packager\node_modules\levelup\lib\levelup.js:274:23
谁能告诉我怎么了?
从leveldb的GitHub页面here,我们可以看到一个例子:
const ops = [
{ type: 'del', key: 'father' },
{ type: 'put', key: 'name', value: 'Yuri Irsenovich Kim' },
{ type: 'put', key: 'dob', value: '16 February 1941' },
{ type: 'put', key: 'spouse', value: 'Kim Young-sook' },
{ type: 'put', key: 'occupation', value: 'Clown' }
]
db.batch(ops, function (err) {
if (err) return console.log('Ooops!', err)
console.log('Great success dear leader!')
})
数组中的每一项都有属性“类型”,可以是“del”或“put”。
所以,我认为代码应该是:
var level = require('level')
var db = level('batch.db', { valueEncoding: 'json' })
var batch = []
for (var i = 0; i < 10; i++) {
batch.push({ type : "put", key: 'n' + i, value: i*1000 })
}
db.batch(batch, function (err) {
if (err) console.error(err)
})
我刚开始学习 level.db 使用 node.js
中的关卡模块var level = require('level')
var db = level('batch.db', { valueEncoding: 'json' })
var batch = []
for (var i = 0; i < 10; i++) {
batch.push({ key: 'n' + i, value: i*1000 })
}
db.batch(batch, function (err) {
if (err) console.error(err)
})
但是这段代码给了我以下内容ERROR
错误 [WriteError]:type
必须是 'put' 或 'del'
在 C:\Users\mathe\Desktop\levelDB-and-Crypto\node_modules\level-packager\node_modules\levelup\lib\levelup.js:274:23
谁能告诉我怎么了?
从leveldb的GitHub页面here,我们可以看到一个例子:
const ops = [
{ type: 'del', key: 'father' },
{ type: 'put', key: 'name', value: 'Yuri Irsenovich Kim' },
{ type: 'put', key: 'dob', value: '16 February 1941' },
{ type: 'put', key: 'spouse', value: 'Kim Young-sook' },
{ type: 'put', key: 'occupation', value: 'Clown' }
]
db.batch(ops, function (err) {
if (err) return console.log('Ooops!', err)
console.log('Great success dear leader!')
})
数组中的每一项都有属性“类型”,可以是“del”或“put”。
所以,我认为代码应该是:
var level = require('level')
var db = level('batch.db', { valueEncoding: 'json' })
var batch = []
for (var i = 0; i < 10; i++) {
batch.push({ type : "put", key: 'n' + i, value: i*1000 })
}
db.batch(batch, function (err) {
if (err) console.error(err)
})