tweak streaming.js example

This commit is contained in:
Nate Silva 2017-09-10 20:31:30 -07:00
parent 2f40a0281e
commit af9c4f03a3
No known key found for this signature in database
GPG Key ID: C01CCECE75E863E4

View File

@ -24,16 +24,20 @@ async function main() {
const statement = snowflake.createStatement({
sqlText: 'SELECT * FROM CUSTOMER WHERE C_MKTSEGMENT=:1',
binds: ['AUTOMOBILE'],
// This tells Snowflake not to bother building an array of all the result
// rows. Thats a good thing when streaming a huge result set:
streamResult: true
});
// You dont have to await this, you can begin streaming immediately.
await statement.execute();
// How many rows did it return? (Without loading all of them.)
// How many rows in the result set? This only works if you await-ed
// execute(), above. Otherwise, the number of rows is not known yet.
console.log(`the query result set has ${statement.getNumRows()} rows`);
// lets process rows 250-275, one by one
// (if you omit the argument for streamRows(), all rows will be processed)
// Lets process rows 250-275, one by one. (If you omit the argument for
// streamRows(), all rows will be processed.)
statement.streamRows({ start: 250, end: 275 })
.on('error', console.error)
.on('data', row => console.log(`customer name is: ${row['C_NAME']}`))