/
db.js
41 lines (37 loc) 路 1012 Bytes
/
db.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
// Connect to database
'use strict'
const sqlite3 = require('sqlite3').verbose();
let schema = `CREATE TABLE IF NOT EXISTS Villager (
villager_id integer PRIMARY KEY AUTOINCREMENT,
villager_name text NOT NULL UNIQUE
);
CREATE TABLE IF NOT EXISTS Quotes (
quote_id integer PRIMARY KEY AUTOINCREMENT,
villager_id integer,
quote text NOT NULL UNIQUE,
FOREIGN KEY (villager_id) REFERENCES Villager(villager_id)
);`;
let db = new sqlite3.Database('.data/random-stardew-quotes.db', (err) => {
if (err) {
console.error(err.message);
return;
}
else {
console.log("Currently connected to the API's SQlite database");
db.exec('PRAGMA foreign_keys = ON;', function(err) {
if (err) {
console.error(err.message);
}
else {
console.log("Database foreign key support is on");
}
});
db.exec(schema, (err) => {
if (err) {
console.log(err.message);
}
});
}
});
module.exports.sqlite3 = sqlite3;
module.exports.db = db;