Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 выдается ошибка  [new]
ЖУХА
Guest
DECLARE
v_weight NUMBER(3) := 600;
v_message VARCHAR2(255):= 'Product 10012';
BEGIN
DECLARE
v_weight NUMBER(3) := 1;
v_message VARCHAR2(255) := 'Product 11001';
v_new_locn VARCHAR2(50) := 'Europe';
BEGIN
v_weight := v_weight + 1;
v_new_locn := 'Western ' || v_new_locn;
END;
v_weight := v_weight + 1;
v_message := v_message || 'is in stock';
v_new_locn := 'Western' || v_new_locn;
END;
выдается ошибка
30 ноя 17, 08:46    [20994243]     Ответить | Цитировать Сообщить модератору
 Re: выдается ошибка  [new]
Добрый Э - Эх
Guest
ЖУХА,

Ошибку предлагается угадать?
30 ноя 17, 08:48    [20994244]     Ответить | Цитировать Сообщить модератору
 Re: выдается ошибка  [new]
шК0ДЕР
Member

Откуда: Издалека долго
Сообщений: 1206
ЖУХА, на первый взгляд отсутствует объявление переменной v_new_locn. Добавьте в DECLARE
v_new_locn VARCHAR2(255);
30 ноя 17, 09:03    [20994262]     Ответить | Цитировать Сообщить модератору
 Re: выдается ошибка  [new]
begin null; end;
Guest
шК0ДЕР
на первый взгляд
На первый взгляд, если цель этого кода не получить ошибку, то получить тот же результат можно, упростив код до одной команды.
30 ноя 17, 09:55    [20994375]     Ответить | Цитировать Сообщить модератору
 Re: выдается ошибка  [new]
Vadim Lejnin
Member

Откуда:
Сообщений: 7125
На будущее, используйте ТЭГ SRC (Кнопка чуть выше поля ввода сообщения)
Выделяете текст кода и тынц на кнопочку.
Так гораздо удобнее читать
ЖУХА
DECLARE
v_weight NUMBER(3) := 600;
v_message VARCHAR2(255):= 'Product 10012';
BEGIN
DECLARE
v_weight NUMBER(3) := 1;
v_message VARCHAR2(255) := 'Product 11001';
v_new_locn VARCHAR2(50) := 'Europe';
BEGIN
v_weight := v_weight + 1;
v_new_locn := 'Western ' || v_new_locn;
END;
v_weight := v_weight + 1;
v_message := v_message || 'is in stock';
v_new_locn := 'Western' || v_new_locn;
END;

выдается ошибка
30 ноя 17, 11:00    [20994584]     Ответить | Цитировать Сообщить модератору
 Re: выдается ошибка  [new]
env
Member

Откуда: Россия, Москва
Сообщений: 6696
ЖУХА
DECLARE
...
BEGIN
DECLARE

Что это?
30 ноя 17, 11:01    [20994594]     Ответить | Цитировать Сообщить модератору
 Re: выдается ошибка  [new]
efendi
Member

Откуда:
Сообщений: 126
env
ЖУХА
DECLARE
...
BEGIN
DECLARE

Что это?


Предположу, что ТС изучает видимость переменных с одинаковым именем. (IMHO)

ЖУХА,

Ошибка возникает при присвоении значения переменной v_new_locn в предпоследней строке. Эта переменная описана во внутреннем блоке и следовательно не видна во внешнем.

Тут шК0ДЕР прав ;-)
30 ноя 17, 11:35    [20994734]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить