Fix db schema
This commit is contained in:
parent
4b4bf0e57f
commit
436832a419
@ -46,9 +46,11 @@ data:
|
|||||||
user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||||
matched_user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
matched_user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE,
|
||||||
status TEXT DEFAULT 'pending',
|
status TEXT DEFAULT 'pending',
|
||||||
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||||
CONSTRAINT unique_match UNIQUE (LEAST(user_id, matched_user_id), GREATEST(user_id, matched_user_id))
|
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE INDEX IF NOT EXISTS idx_matches_user_id ON matches (user_id);
|
CREATE INDEX IF NOT EXISTS idx_matches_user_id ON matches (user_id);
|
||||||
CREATE INDEX IF NOT EXISTS idx_matches_matched_user_id ON matches (matched_user_id);
|
CREATE INDEX IF NOT EXISTS idx_matches_matched_user_id ON matches (matched_user_id);
|
||||||
|
-- Prevent duplicate matches in both directions
|
||||||
|
CREATE UNIQUE INDEX IF NOT EXISTS idx_matches_unique ON matches
|
||||||
|
(LEAST(user_id, matched_user_id), GREATEST(user_id, matched_user_id));
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user