我试图了解如何使用jsforce&批量查询从salesforce导出50k记录。只返回前10k,我知道这是由于批量大小限制为10k但是我不明白如何创建下一批获取记录10001到20000等等。
目前我有以下内容,我们非常感谢任何帮助。
conn.bulk.query('SELECT Id FROM Account')
.on('record', function record(rec) {
log.debug('dumpAllObject', 'rec', rec);
})
.on('error', function handle(err) { log.error('dumpAllObject', 'error', err); })
.on('end', function resolve() {
log.info('dumpAllObject', 'Completed');
});
答案 0 :(得分:1)
尝试使用authFetch
和maxFetch
选项:
conn.query('SELECT Id FROM Account')
.on('record', function record(rec) {
log.debug('dumpAllObject', 'rec', rec);
})
.on('error', function handle(err) { log.error('dumpAllObject', 'error', err); })
.on('end', function resolve() {
log.info('dumpAllObject', 'Completed');
})
.run({
authFetch: true,
maxFetch: 20000
});
这仅适用于查询(不是插入,更新或删除)。
也不确定conn.query
和conn.bulk.query
之间的区别是什么。