Files
gestion-perso/fonctions/initDB.js
T

68 lines
1.5 KiB
JavaScript

const sqlite3 = require('sqlite3').verbose();
require('dotenv').config();
module.exports = function initDB() {
let db = new sqlite3.Database('db.db', sqlite3.OPEN_READWRITE | sqlite3.OPEN_CREATE, (err) => {
if (err) {
console.error(err.message);
}
});
db.run(`CREATE TABLE IF NOT EXISTS prefix(
prefix TEXT NOT NULL DEFAULT '${process.env.DEFAULT_PREFIX}',
serverID TEXT NOT NULL UNIQUE
)`, (err) => {
if (err) {
console.error(err.message);
}
});
db.run(`CREATE TABLE IF NOT EXISTS users(
serverID TEXT NOT NULL,
userID TEXT NOT NULL,
coins INTEGER NOT NULL DEFAULT 0,
bank INTEGER NOT NULL DEFAULT 0,
xp INTEGER NOT NULL DEFAULT 0,
levels INTEGER NOT NULL DEFAULT 0,
messages INTEGER NOT NULL DEFAULT 0,
buyer BOOLEAN NOT NULL DEFAULT 0,
owner BOOLEAN NOT NULL DEFAULT 0,
whitelist BOOLEAN NOT NULL DEFAULT 0,
blacklist BOOLEAN NOT NULL DEFAULT 0
)`, (err) => {
if (err) {
console.error(err.message);
}
});
db.run(`CREATE TABLE IF NOT EXISTS commands(
command TEXT NOT NULL,
permission INTEGER NOT NULL DEFAULT 11,
serverID TEXT NOT NULL
)`, (err) => {
if (err) {
console.error(err.message);
}
});
db.run(`CREATE TABLE IF NOT EXISTS permissions(
permission INTEGER NOT NULL UNIQUE,
roleID TEXT NOT NULL,
serverID TEXT NOT NULL
)`, (err) => {
if (err) {
console.error(err.message);
}
});
db.close((err) => {
if (err) {
console.error(err.message);
}
});
};