Enforce uniqueness on short_code + expiry_date + user_id via DB trigger
This commit is contained in:
parent
0490664441
commit
8e66cbe7ba
|
@ -72,6 +72,15 @@ const initDB = async () => {
|
|||
SELECT 1 FROM urls
|
||||
WHERE user_id = NEW.user_id AND customized_shortner_slug = NEW.customized_shortner_slug
|
||||
);
|
||||
|
||||
-- Case 3: Prevent reinserting same short_code + expiry_date + user_id + slug (if slug is not null)
|
||||
SELECT RAISE(ABORT, 'Duplicate URL record not allowed')
|
||||
WHERE EXISTS (
|
||||
SELECT 1 FROM urls
|
||||
WHERE short_code = NEW.short_code
|
||||
AND expiry_date = NEW.expiry_date
|
||||
AND user_id = NEW.user_id
|
||||
);
|
||||
END;
|
||||
`,
|
||||
function (err) {
|
||||
|
|
Loading…
Reference in a new issue