Files
kochwas/src/lib/server/db/migrations/002_wishlist.sql

20 lines
827 B
MySQL
Raw Normal View History

-- Shared family wishlist: recipes someone wants to cook next.
-- Each recipe appears at most once; anyone can add/remove and like/unlike.
CREATE TABLE IF NOT EXISTS wishlist (
recipe_id INTEGER PRIMARY KEY REFERENCES recipe(id) ON DELETE CASCADE,
added_by_profile_id INTEGER REFERENCES profile(id) ON DELETE SET NULL,
added_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
CREATE INDEX IF NOT EXISTS ix_wishlist_added_at ON wishlist(added_at DESC);
CREATE TABLE IF NOT EXISTS wishlist_like (
recipe_id INTEGER NOT NULL REFERENCES recipe(id) ON DELETE CASCADE,
profile_id INTEGER NOT NULL REFERENCES profile(id) ON DELETE CASCADE,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (recipe_id, profile_id)
);
CREATE INDEX IF NOT EXISTS ix_wishlist_like_recipe ON wishlist_like(recipe_id);