-
Notifications
You must be signed in to change notification settings - Fork 26
/
Copy pathquery.js
55 lines (44 loc) · 968 Bytes
/
query.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
'use strict';
var util = require('util');
var waterfall = require('async-waterfall');
var hana = require('@sap/hana-client');
var connOptions = {
serverNode: '<endpoint>',
encrypt: 'true',
uid: '<user>',
pwd: '<password>'
};
var connection = hana.createConnection();
var tasks = [
myconn,
mysql, myexecute, myresults,
mydisco
];
waterfall(tasks, done);
console.log("Async calls underway\n");
function myconn(cb) {
connection.connect(connOptions);
cb(null);
}
function mysql(cb) {
var sql = 'SELECT * FROM travel.budgetrooms';
cb(null, sql);
}
function myexecute(sql, cb) {
var rows = connection.exec(sql);
cb(null, rows);
}
function myresults(rows, cb) {
console.log(util.inspect(rows, { colors: true }));
console.log("");
cb(null);
}
function mydisco(cb) {
connection.disconnect(cb);
}
function done(err) {
console.log("Async done");
if (err) {
return console.error(err);
}
}