Changes between Version 4 and Version 5 of AdvancedApplicationDevelopment
- Timestamp:
- 06/25/25 13:20:59 (3 days ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
AdvancedApplicationDevelopment
v4 v5 22 22 23 23 === Примери за тригери 24 Тригерите се користат за автоматска реакција на промена во базата. Во TravelSage, тие се применети за : контрола на интегритет (нема дупли препораки) иавтоматска реакција на негативна рецензија.24 Тригерите се користат за автоматска реакција на промена во базата. Во TravelSage, тие се применети за автоматска реакција на негативна рецензија. 25 25 26 1. Спречување дупли препораки 27 Ако корисник веќе има препорака за истата дестинација, не му се дозволува повторно да ја додаде. 28 {{{ 29 CREATE OR REPLACE FUNCTION prevent_duplicate_recommendation() 30 RETURNS TRIGGER AS $$ 31 BEGIN 32 IF EXISTS ( 33 SELECT 1 FROM preporaki 34 WHERE idkorisnik = NEW.idkorisnik AND iddestinacija = NEW.iddestinacija 35 ) THEN 36 RAISE EXCEPTION 'User already has this destination in recommendations!'; 37 END IF; 38 RETURN NEW; 39 END; 40 $$ LANGUAGE plpgsql; 41 42 CREATE TRIGGER trg_check_duplicate_recommendation 43 BEFORE INSERT ON preporaki 44 FOR EACH ROW EXECUTE FUNCTION prevent_duplicate_recommendation(); 45 }}} 46 47 2. Деактивирање дестинација со негативни рецензии 26 1. Деактивирање дестинација со негативни рецензии 48 27 Ако некој внесе рецензија со оцена помала од 3, системот автоматски ја прави дестинацијата неактивна за да не се прикажува во понатамошните резултати. 49 28 {{{