Refactor code structure for improved readability and maintainability
This commit is contained in:
@@ -19,6 +19,13 @@ async function createUsersTable() {
|
||||
}
|
||||
}
|
||||
|
||||
async function ensureColumn(table, column, definition) {
|
||||
const [columns] = await db.query(`SHOW COLUMNS FROM ${table} LIKE ?`, [column]);
|
||||
if (columns.length === 0) {
|
||||
await db.query(`ALTER TABLE ${table} ADD COLUMN ${definition}`);
|
||||
}
|
||||
}
|
||||
|
||||
async function createLicensesTable() {
|
||||
await db.query(`
|
||||
CREATE TABLE IF NOT EXISTS licenses (
|
||||
@@ -33,11 +40,18 @@ async function createLicensesTable() {
|
||||
created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
|
||||
updated_at DATETIME DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
||||
last_version_check_at DATETIME NULL,
|
||||
last_used_version VARCHAR(64) NULL,
|
||||
primary_hostname VARCHAR(255) NULL,
|
||||
primary_hostname_normalized VARCHAR(255) NULL,
|
||||
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
|
||||
`);
|
||||
|
||||
await ensureColumn(
|
||||
"licenses",
|
||||
"last_used_version",
|
||||
"last_used_version VARCHAR(64) NULL AFTER last_version_check_at"
|
||||
);
|
||||
}
|
||||
|
||||
async function createLicenseHostnamesTable() {
|
||||
|
||||
Reference in New Issue
Block a user