关于 NoSQLClient.query 与 Oracle NoSQL 的问题?
question about NoSQLClient.query with Oracle NoSQL?
我是 运行 node.js 中的以下查询,我意识到它没有返回所有行。我做错了什么?
app.get('/', async (req, res) => {
try {
const result = await client.query(`SELECT * FROM ${TasksTableName}`);
res.json(result.rows);
} catch (err) {
console.error('failed to get data', err);
res.status(500).json({ error: err });
}
});
您描述的行为是正常的。实际上,每次调用NoSQLClient.queryreturns结果集的一部分。使用查询选项参数中的 QueryResult.continuationKey
遍历结果集,直到结果集耗尽且延续键为空。 Ci-下面举例
async function runQuery(client, stmt, limit) {
const opt = { limit };
let res;
console.log('Query results:');
do {
// Issue the query
res = await client.query(stmt, opt);
// Each call to NoSQLClient.query returns a portion of the
// result set. Iterate over the result set, using the
// QueryResult.continuationKey in the query's option parameter,
// until the result set is exhausted and continuation key is
// null.
for(let row of res.rows) {
console.log(' %O', row);
}
opt.continuationKey = res.continuationKey;
} while(res.continuationKey != null);
}
我是 运行 node.js 中的以下查询,我意识到它没有返回所有行。我做错了什么?
app.get('/', async (req, res) => {
try {
const result = await client.query(`SELECT * FROM ${TasksTableName}`);
res.json(result.rows);
} catch (err) {
console.error('failed to get data', err);
res.status(500).json({ error: err });
}
});
您描述的行为是正常的。实际上,每次调用NoSQLClient.queryreturns结果集的一部分。使用查询选项参数中的 QueryResult.continuationKey
遍历结果集,直到结果集耗尽且延续键为空。 Ci-下面举例
async function runQuery(client, stmt, limit) {
const opt = { limit };
let res;
console.log('Query results:');
do {
// Issue the query
res = await client.query(stmt, opt);
// Each call to NoSQLClient.query returns a portion of the
// result set. Iterate over the result set, using the
// QueryResult.continuationKey in the query's option parameter,
// until the result set is exhausted and continuation key is
// null.
for(let row of res.rows) {
console.log(' %O', row);
}
opt.continuationKey = res.continuationKey;
} while(res.continuationKey != null);
}