feat: first commit.
This commit is contained in:
commit
fb26468175
12 files changed
+865
No files matched your search
@@ -0,0 +1,43 @@
|
||||
use rusqlite::Connection;
|
||||
|
||||
const MIGRATION_SCRIPT: &str = "
|
||||
|
||||
CREATE TABLE IF NOT EXISTS users (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
name TEXT NOT NULL,
|
||||
key TEXT NOT NULL
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS security_types (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
name TEXT NOT NULL UNIQUE
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS securities (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
security_type INTEGER NOT NULL,
|
||||
name TEXT NOT NULL UNIQUE,
|
||||
symbol TEXT NOT NULL UNIQUE,
|
||||
|
||||
FOREIGN KEY(security_type) REFERENCES security_types(id)
|
||||
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS account(
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
security INTEGER NOT NULL,
|
||||
owner INTEGER NOT NULL,
|
||||
|
||||
FOREIGN KEY(security) REFERENCES securities(id)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS account_values(
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT
|
||||
);
|
||||
|
||||
|
||||
";
|
||||
|
||||
pub fn migrate(conn: & Connection) {
|
||||
conn.execute(MIGRATION_SCRIPT, ()).unwrap();
|
||||
}
|
||||
Reference in new issue
Block a user