Publier Globinours 1.0.0-rc.3
This commit is contained in:
parent
ea8c24d622
commit
9a2b4068da
325 changed files with 38230 additions and 20 deletions
26
migrations/024_litters.sql
Normal file
26
migrations/024_litters.sql
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
PRAGMA foreign_keys = ON;
|
||||
|
||||
CREATE TABLE IF NOT EXISTS litters (
|
||||
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
||||
mother_id INTEGER,
|
||||
father_id INTEGER,
|
||||
birth_date TEXT,
|
||||
notes TEXT,
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
FOREIGN KEY(mother_id) REFERENCES animals(id) ON DELETE SET NULL,
|
||||
FOREIGN KEY(father_id) REFERENCES animals(id) ON DELETE SET NULL,
|
||||
CHECK (mother_id IS NULL OR father_id IS NULL OR mother_id != father_id)
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS litter_kittens (
|
||||
litter_id INTEGER NOT NULL,
|
||||
animal_id INTEGER NOT NULL UNIQUE,
|
||||
position INTEGER NOT NULL DEFAULT 1,
|
||||
PRIMARY KEY(litter_id, animal_id),
|
||||
FOREIGN KEY(litter_id) REFERENCES litters(id) ON DELETE CASCADE,
|
||||
FOREIGN KEY(animal_id) REFERENCES animals(id) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_litters_mother ON litters(mother_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_litters_father ON litters(father_id);
|
||||
CREATE INDEX IF NOT EXISTS idx_litter_kittens_litter ON litter_kittens(litter_id, position);
|
||||
Loading…
Add table
Add a link
Reference in a new issue