나는이 트리거에 대한 구문을 올바르게 이해하기 위해 2 시간 이상 노력했지만 컴파일 오류가 계속 발생하여 누군가가 잘못된 방향으로 나를 가리킬 수 있습니까?오라클 구문 오류 트리거
film_id
rental_rate
CREATE OR REPLACE TRIGGER TRIGGER_ACTOR_STARRED
BEFORE INSERT ON film_actor FOR EACH ROW
BEGIN
IF :new.actor_id IN (SELECT *
FROM V_ACTORS_STARRED) THEN
UPDATE film
SET rental_rate := rental_rate * 1.10
WHERE :new.actor_id = film_actor.actor_id
AND film.film_id = film_actor.film_id;
END IF;
END;
/
다음과 같이 I가 선택하는 노력하고있어보기 :
actor_id
film_id
영화는 다음과 같은 필드가 있습니다
[Compilation errors: missing equal sign line 5, sql statement ignored, line 4]
FILM_ACTOR에는 다음과 같은 필드가
CREATE OR REPLACE VIEW V_ACTORS_STARRED AS
SELECT actor_id
FROM actor
WHERE actor_id IN
(SELECT actor_id
FROM film_actor
WHERE film_actor.actor_id = actor.actor_id
AND film_id IN
(SELECT film.film_id
FROM film, film_category, category
WHERE category.name = 'Documentary'
AND film.film_id = film_category.film_id
AND film_category.category_id = category.category_id
AND rental_rate = (SELECT MAX(rental_rate)
FROM film, category, film_category
WHERE category.name = 'Documentary'
AND film.film_id = film_category.film_id
AND film_category.category_id = category.category_id)));
가능한 중복)에서 테이블)> 0 then] (http://stackoverflow.com/questions/10200281/if-select-countcolumn-from-table-0-then) –
가능한 중복 게시물, 같은 솔루션에서 작업을 시도했습니다 오류가 표시되고/throw됩니다. – user3603183