18 lines
715 B
SQL
18 lines
715 B
SQL
CREATE TABLE IF NOT EXISTS match_penalty_settings (
|
|
match_id INTEGER PRIMARY KEY REFERENCES matches(id) ON DELETE CASCADE,
|
|
max_rounds INTEGER NOT NULL DEFAULT 5,
|
|
created_at TIMESTAMP DEFAULT NOW(),
|
|
updated_at TIMESTAMP DEFAULT NOW()
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS match_penalties (
|
|
id SERIAL PRIMARY KEY,
|
|
match_id INTEGER NOT NULL REFERENCES matches(id) ON DELETE CASCADE,
|
|
side VARCHAR(10) NOT NULL CHECK (side IN ('home', 'away')),
|
|
shot_number INTEGER NOT NULL CHECK (shot_number > 0),
|
|
result VARCHAR(20) NOT NULL CHECK (result IN ('scored', 'missed')),
|
|
created_at TIMESTAMP DEFAULT NOW(),
|
|
updated_at TIMESTAMP DEFAULT NOW(),
|
|
UNIQUE (match_id, side, shot_number)
|
|
);
|