diff --git a/database.js b/database.js index 2ee0df6..4696eed 100644 --- a/database.js +++ b/database.js @@ -43,7 +43,7 @@ let close = () => { }); } -let main = async () => { +/* let main = async () => { query('insert into log (message) values (\'Outside\')'); let rows = null; try { @@ -56,14 +56,21 @@ let main = async () => { } catch (ex) { console.error('Error', ex); } +} + +main(); */ + +let exitHandler = (eventType) => { + console.log("DB-Cleaning up (" + eventType + ")"); close(); } -main(); - +// make sure we close the DB in case the process ends. +[`exit`, `SIGINT`, `SIGUSR1`, `SIGUSR2`, `uncaughtException`, `SIGTERM`].forEach((eventType) => { + process.on(eventType, exitHandler.bind(null, eventType)); + }) module.exports = { - query, - close + query }; \ No newline at end of file diff --git a/index.js b/index.js index a86af67..4892f53 100644 --- a/index.js +++ b/index.js @@ -1,31 +1,18 @@ -const sqlite3 = require('sqlite3').verbose(); +const db = require('./database'); -let db = new sqlite3.Database('playdb.sqlite3', sqlite3.OPEN_READWRITE, (err) => { - if (err) { - console.error("ERROR: opening DB failed: ", err.message); +let main = async () => { + db.query('insert into log (message) values (\'Outside\')'); + let rows = null; + try { + await db.query('insert into log (message) values (\'start\')'); + rows = await db.query('select * from Option'); + rows.forEach((row) => { + console.log(row.ID + "\t" + row.PutCall); + }) + await db.query('insert into log (message) values (\'end\')'); + } catch (ex) { + console.error('Error', ex); } - console.log('Connected.'); -}); +} -db.serialize(() => { - db.each('select * from option', (err, row) => { - if (err) { - console.error("ERROR: fetching data: ", err.message); - } - console.log(row.ID + "\t" + row.PutCall); - }); - db.run('insert into Log (Message) values (\'' + new Date().toUTCString() + '\')', (err) => { - if (err) { - console.error("ERROR: inserting row: ", err.message); - } - console.log('Log-Row inserted'); - }); - -}); - -db.close((err) => { - if (err) { - console.error("ERROR: closing DB: ", err.message); - } - console.log('DB Connection closed'); -}) \ No newline at end of file +main(); diff --git a/playdb.sqlite3 b/playdb.sqlite3 index a19fe87..fe257c3 100644 Binary files a/playdb.sqlite3 and b/playdb.sqlite3 differ