Enforce uniqueness on short_code + expiry_date + user_id via DB trigger

This commit is contained in:
Arshdeep Singh 2025-06-02 11:06:07 +05:30
parent 0490664441
commit 8e66cbe7ba

View file

@ -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) {