Использование Oracle SQL Developer.У меня работает следующий пример:
DECLARE
v_next_TransId INTEGER; -- declare
BEGIN
select (max(Transaction_ID)+1) into v_next_TransId from xxpos.pos_transactions;
dbms_output.Put_line(v_next_TransId); --display
END;
Теперь я хочу использовать эту переменную при вставке и / или выделении, я пробовал с префиксом: и без него.Пример ниже дает мне ORA-01008: не все переменные найдены.
DECLARE
v_next_TransId INTEGER; -- declare
BEGIN
select (max(Transaction_ID)+1) into v_next_TransId from xxpos.pos_transactions;
dbms_output.Put_line(v_next_TransId); --display
-- insert new row will go here
-- commit will go here
-- now verify the insert worked okay
--select * from xxpos.pos_transactions where Transaction_ID = ( select max(Transaction_ID) from xxpos.pos_transactions )
select * from xxpos.pos_transactions where Transaction_ID = :v_next_TransId;
END;
Без: перед переменной я получаю следующую синтаксическую ошибку:
Версии:
Oracle Database 11gВыпуск Enterprise Edition 11.2.0.4.0 - 64-разрядное производство
PL / SQL Release 11.2.0.4.0 - Производство