feature: Update database schema to separate payees from payments

This commit is contained in:
Keith Solomon
2025-02-09 12:02:00 -06:00
parent 2740050965
commit 62071c6645
6 changed files with 74 additions and 47 deletions

View File

@@ -3,15 +3,22 @@ class DB {
public static function connect() {
$db = new PDO('sqlite:'.__DIR__.'/../data/bills.db');
$db->exec("CREATE TABLE IF NOT EXISTS payees (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL UNIQUE,
createdAt TEXT DEFAULT CURRENT_TIMESTAMP
)");
$db->exec("CREATE TABLE IF NOT EXISTS bills (
id INTEGER PRIMARY KEY,
billDate TEXT NOT NULL,
billName TEXT NOT NULL,
amount REAL NOT NULL,
paymentId TEXT,
year INTEGER NOT NULL,
comment TEXT
)");
id INTEGER PRIMARY KEY AUTOINCREMENT,
billDate TEXT NOT NULL,
payeeId INTEGER NOT NULL,
amount REAL NOT NULL,
paymentId TEXT,
comment TEXT,
year INTEGER NOT NULL,
FOREIGN KEY (payeeId) REFERENCES payees(id) ON DELETE CASCADE
)");
return $db;
}