PL / SQL Как получить пользовательский ввод - PullRequest
0 голосов
/ 02 октября 2018

Я хочу попросить пользователя ввести данные и сохранить их в переменной.Когда я запускаю следующее, он запрашивает «Введите значение для v_degree:», а затем «Введите значение для v_num», когда я хочу, чтобы он спросил, используя две строки, которые я предоставил: «Введите шкалу ввода (C или F) для температуры: "и" Введите значение вашей температуры для преобразования: "

DECLARE
    v_degree VARCHAR2(1);
    v_num VARCHAR2(3);
BEGIN
    DBMS_OUTPUT.PUT_LINE('Enter your input scale (C or F) for temperature:', &v_degree);
    DBMS_OUTPUT.PUT_LINE('Enter your temperature value to be converted:', &v_num);
END;
/

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

Попробуйте:

DECLARE
v_degree VARCHAR2(1) DEFAULT :in_degree;
v_num VARCHAR2(3) DEFAULT :in_num;
BEGIN
    DBMS_OUTPUT.PUT_LINE('You entered input scale (C or F) for temperature: '||v_degree);
    DBMS_OUTPUT.PUT_LINE('You entered temperature value to be converted: '||v_num);
END;

Удачи

0 голосов
/ 02 октября 2018

PL / SQL - это язык на стороне сервера, и поэтому не предусмотрено никаких средств для непосредственного взаимодействия с пользователями.Существует несколько вариантов:

  1. Если вы используете SQLPlus в качестве клиента, вы можете использовать команды, предоставляемые SQLPlus, такие как ACCEPT, для получения пользовательского ввода.
  2. Oracle предоставляетПакет UTL_FILE, который может использоваться для чтения данных из файлов, с некоторыми ограничениями.
  3. Oracle также предоставляет «внешние таблицы», которые позволяют читать файл и отображать его в виде таблицы в базе данных.

Удачи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...