У меня есть эта процедура:
create or replace procedure check_max_game_rule_test (i_player_id IN NUMBER,i_max_games IN NUMBER, i_err_code OUT number)
is
v_fixid number;
v_count_fixid number;
max_games_violation exception;
cursor c1 is
SELECT ti.fixid,count(ti.fixid)
FROM BUS_SESSION BS,
CASINO_USERS CUP,
TICKET_ITEMS TI
WHERE BS.PARTY_ID = 4356
AND TI.BUS_SESSION_SESSION_ID = BS.SESSION_ID
AND NVL(BS.SESSION_CLOSE,'N') = 'N'
and CUP.parent_id = BS.AFF_ID
AND BS.SESSION_TYPE = 'TICKET SESSION'
group by TI.FIXID;
r1 c1%ROWTYPE;
begin
open c1;
loop
fetch c1 into v_fixid,v_count_fixid;
if v_count_fixid > i_max_games
then
raise max_games_violation;
end if;
end loop;
close c1;
end ;
результаты, которые выбирают, возвращают:
Процедура должна посчитать тот же фиксид и сравнить его с i_max_games иесли счет этого фиксированного значения больше, чем i_max_games, тогда выдается исключение ..
Теперь я сталкиваюсь с символом c1
Может ли кто-нибудь помочь мне в этом, и является ли этот курсор для получения и сравнения фиксированного логического значения?