Запрос Oracle PL SQL ПРИНЯТЬ-ПОДДЕРЖКУ в формате даты с использованием средства выбора даты? - PullRequest
0 голосов
/ 06 апреля 2020

Мне нужно следующее предложение SQL, чтобы запросить переменную From_Date в формате DATE. В настоящее время Toad (инструмент, который я использую) помечает его как переменную 'Substitution'. Я понимаю, что этого должно быть достаточно, чтобы Жаба включила Выбор даты в мое приглашение.

ACCEPT From_Date FORMAT DATE
PROMPT 'Enter from date: '

SET SERVEROUTPUT ON;

BEGIN
    DBMS_OUTPUT.PUT_LINE ('&From_Date');

END
;

Спасибо!

1 Ответ

0 голосов
/ 06 апреля 2020

PL SQL не запрашивает и не может запрашивать никогда. Вы смешиваете понятия:

  1. Переменные связывания: передача переменной из скрипта в PL SQL
  2. Переменные замещения: «переменная», которая физически заменяется интерфейсом в ваш сценарий перед отправкой на Oracle.

Ваши сценарии устанавливают переменную привязки с помощью ACCEPT-PROMPT и переменную подстановки с & From_Date. Вам нужно выбрать 1, а не смешивать их, по крайней мере, для одной и той же переменной. Попробуйте следующее:

Использовать переменную связывания:

ACCEPT From_Date FORMAT DATE
PROMPT 'Enter from date: '
SET SERVEROUTPUT ON;
BEGIN
    DBMS_OUTPUT.PUT_LINE (':From_Date');
END;

Использовать переменную подстановки:

SET SERVEROUTPUT ON;
BEGIN
    DBMS_OUTPUT.PUT_LINE ('&From_Date');
END;
...