У меня возникла проблема относительно сканировать значение в процедуре pl/sql. Когда я выполнил процедуру, он игнорирует a: = '& a';.Как узнать значение в процедуре pl/sql?
Процедура тела
create or replace PROCEDURE Testing
IS
a VARCHAR2(3);
BEGIN
DBMS_OUTPUT.PUT_LINE('Enter a : ');
a:='&a';
END Testing;
Процедура Вызов
SET SERVEROUTPUT ON;
cl scr;
Execute Testing;
Выход
PL/SQL procedure successfully completed.
Enter a :
Может кто-нибудь помочь мне, пожалуйста !?
Что вы 'параметр define' (используйте' show' в SQL Developer для проверки)? PL/SQL не предназначен для взаимодействия с пользователем, а подсказка о значениях необычна и не очень практична в хранимой процедуре. Вы, конечно, не можете использовать 'dbms_output' для приглашения, потому что это (как видите) показано после завершения выполнения блока. Вы можете использовать команды 'prompt' и' accept' client, но не из PL/SQL. Трудно сказать, что вы действительно хотите сделать. –
Я получаю вашу мысль, но команда ** SHOW ** не работает. Я прошел через [это] (http://docs.oracle.com/javadb/10.8.3.0/tools/rtoolsijcomrefshow.html). –
Эта ссылка не для Oracle Database; попробуйте [этот] (http://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_twelve041.htm#sthref2258). И ['set define' command] (http://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_five.htm#CACIIEDF), чтобы установить его в' & ', если он выключен. –