vybe/src/db.js

28 lines
575 B
JavaScript
Raw Normal View History

2024-04-21 23:31:37 -07:00
const sqlite3 = require('sqlite3');
const fs = require('fs');
2024-06-12 03:00:50 -07:00
const path = 'vybe.db';
2024-04-21 23:31:37 -07:00
2024-06-12 03:00:50 -07:00
const existed = fs.existsSync(path);
const db = new sqlite3.Database(path);
2024-04-21 23:31:37 -07:00
db.query = function (sql, params) {
return new Promise((resolve, reject) => {
2024-09-25 17:33:33 -07:00
db.all(sql, params, (error, rows) => {
2024-04-21 23:31:37 -07:00
if (error)
reject(error);
else
resolve({ rows: rows });
});
});
};
(async () => {
2024-06-12 03:00:50 -07:00
if (!existed)
for (let sql of fs.readFileSync('./db/1-init.sql').toString().split(';'))
if (sql.trim())
await db.query(sql);
2024-04-21 23:31:37 -07:00
})();
module.exports = db;