23 lines
720 B
Python
23 lines
720 B
Python
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
|
||
|
|
def apply(db):
|
||
|
|
db.execute_sql(
|
||
|
|
(
|
||
|
|
"CREATE TABLE IF NOT EXISTS recipe (\n"
|
||
|
|
" id INTEGER PRIMARY KEY,\n"
|
||
|
|
" name TEXT NOT NULL UNIQUE,\n"
|
||
|
|
" size_ml INTEGER NOT NULL,\n"
|
||
|
|
" base_pg_pct REAL NOT NULL,\n"
|
||
|
|
" base_vg_pct REAL NOT NULL,\n"
|
||
|
|
" nic_pct REAL CHECK(nic_pct >= 0 AND nic_pct <= 100) NOT NULL,\n"
|
||
|
|
" nic_base TEXT CHECK(nic_base IN ('PG','VG')) NOT NULL,\n"
|
||
|
|
" CHECK (\n"
|
||
|
|
" base_pg_pct >= 0 AND\n"
|
||
|
|
" base_vg_pct >= 0 AND\n"
|
||
|
|
" base_pg_pct + base_vg_pct = 100\n"
|
||
|
|
" )\n"
|
||
|
|
")"
|
||
|
|
)
|
||
|
|
)
|