Гость
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Хмурый анонимный блок / 25 сообщений из 35, страница 1 из 2
04.02.2020, 18:04
    #39922442
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Добрый день.

Подскажите пожалуйста как можно прервать выполнение анонимного блока при определенном условии?


Например если в нем переменная count1 больше 1000 стала.



Внутри блоков куча циклов и всего другого.


EXIT вызывает ошибку:

Код: sql
1.
2.
3.
ОШИБКА: конец функции достигнут без RETURN
SQL-состояние: 2F005
Контекст: функция PL/pgSQL inline_code_block
...
Рейтинг: 0 / 0
04.02.2020, 18:19
    #39922451
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Что-то типа goto надо или типа того
...
Рейтинг: 0 / 0
04.02.2020, 18:38
    #39922464
entrypoint
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
per,

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
DO 
$$
<<ablock>>
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';	
END; 
$$ LANGUAGE 'plpgsql'
...
Рейтинг: 0 / 0
04.02.2020, 18:38
    #39922465
Guzya
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Return что-нибудь.
...
Рейтинг: 0 / 0
05.02.2020, 10:41
    #39922672
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
entrypoint, Guzya, большое спасибо за ответы!

Это похоже на то что требуется!


Однако возникло два вопроса:
...
Рейтинг: 0 / 0
05.02.2020, 10:43
    #39922674
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
1-й вопрос


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
[quot entrypoint#22073025]per,

[src PLSQL]
DO 
$$
<<ablock>>
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';	   --<---------  ПОЧЕМУ???  о_О
END; 
$$ LANGUAGE 'plpgsql'

[/quot][/SRC]





Ну в циклах прописано что exit по условию.


Но почему не попадаем в
" RAISE NOTICE 'и сюда не попадаем'; " ?
...
Рейтинг: 0 / 0
05.02.2020, 10:46
    #39922675
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Второй вопрос:

Guzya
Return что-нибудь.




Куда его в анонимном блоке вставить?


Куда не вставлю - везде ошибку выдает :-(((



Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
DO 
$$
<<ablock>>
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';	
RETURN;
END; 
$$ LANGUAGE 'plpgsql'




ОШИБКА: конец функции достигнут без RETURN
SQL-состояние: 2F005
Контекст: функция PL/pgSQL inline_code_block
...
Рейтинг: 0 / 0
05.02.2020, 11:19
    #39922695
entrypoint
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
DO 
$$
/*!!!*/<<ablock>>/*!!!*/
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT /*!!!*/ablock/*!!!*/  WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';    --<---------  ПОЧЕМУ???  о_О
END; 
$$ LANGUAGE 'plpgsql'







Ну в циклах прописано что exit по условию.


Но почему не попадаем в
" RAISE NOTICE 'и сюда не попадаем'; " ?[/quot]
...
Рейтинг: 0 / 0
05.02.2020, 11:20
    #39922697
entrypoint
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
per
Второй вопрос:

Guzya
Return что-нибудь.




Куда его в анонимном блоке вставить?


Куда не вставлю - везде ошибку выдает :-(((



Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
DO 
$$
<<ablock>>
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';	
RETURN;
END; 
$$ LANGUAGE 'plpgsql'




ОШИБКА: конец функции достигнут без RETURN
SQL-состояние: 2F005
Контекст: функция PL/pgSQL inline_code_block



Можно больше кода для примера ?
Какой код выдает такую ошибку ?
...
Рейтинг: 0 / 0
05.02.2020, 11:30
    #39922701
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Так, если return ставлю перед вторым циклом(добавля IF по условию) - то ошибки не возникает:


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
DO 
$$
<<ablock>>
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	
IF (count > 999) THEN RETURN;END IF;--<-- ТУТА!!!!
        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';	

END; 
$$ LANGUAGE 'plpgsql'





Это получается RETURN с условием надо перед каждым циклом вставлять? о_О
...
Рейтинг: 0 / 0
05.02.2020, 11:52
    #39922724
entrypoint
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
per,

У вас где-то ошибка в логике, где-то в коде есть блок из которого не досягаем RETURN

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
CREATE FUNCTION try() RETURNS void AS 
$$
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	
	
   <<ablock>> 
   BEGIN 
	   LOOP 
			EXIT ablock WHEN count > 999;
			RAISE NOTICE 'сюда не попадаем';
			count = count + 1;
			RAISE NOTICE '%', count;
           END LOOP;

	RAISE NOTICE 'и сюда не попадаем';
	count = count * 1000;
	RAISE NOTICE '%', count;
    END;

    RAISE NOTICE 'сюда попадаем';	
	
    RAISE NOTICE 'Значение count[%] не изменилось после обработки его первым циклом.', count;
    RAISE NOTICE 'Второй цикл, и прямое изменение значения оказались за пределами видимости';

    RETURN;
END; 
$$ LANGUAGE 'plpgsql'
...
Рейтинг: 0 / 0
05.02.2020, 12:01
    #39922732
qwwq
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
entrypoint,

метка не там
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
DO
$$
<<generateerror>> -- Д,б
begin
	<<generateNOerror>>
	loop
		raise notice 'yes';
		exit generateNOerror;
	end loop;
	raise notice 'yes2';
	exit generateerror;
	raise notice 'no';
end;
-- попытка вывалиться сюда
$$
...
Рейтинг: 0 / 0
05.02.2020, 12:09
    #39922744
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
per
1-й вопрос


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
[quot entrypoint#22073025]per,

[src PLSQL]
DO 
$$
<<ablock>>
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';	   --<---------  ПОЧЕМУ???  о_О
END; 
$$ LANGUAGE 'plpgsql'

[/SRC]





Ну в циклах прописано что exit по условию.


Но почему не попадаем в
" RAISE NOTICE 'и сюда не попадаем'; " ?[/quot]

Может там пропущен вопрос, так лучше?
RAISE NOTICE 'и сюда не попадаем И ПОЧЕМУ?'; "
...
Рейтинг: 0 / 0
05.02.2020, 12:11
    #39922750
Ролг Хупин
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
entrypoint
per,

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
DO 
$$
<<ablock>>
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';	
END; 
$$ LANGUAGE 'plpgsql'




Но ТС написал "Внутри блоков куча циклов и всего другого. ", а здесь нет кучи циклов, кроме того, нету "всего другого"
...
Рейтинг: 0 / 0
05.02.2020, 12:12
    #39922752
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
entrypoint
per,

У вас где-то ошибка в логике, где-то в коде есть блок из которого не досягаем RETURN

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
CREATE FUNCTION try() RETURNS void AS 
$$
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	
	
   <<ablock>> 
   BEGIN 
	   LOOP 
			EXIT ablock WHEN count > 999;
			RAISE NOTICE 'сюда не попадаем';
			count = count + 1;
			RAISE NOTICE '%', count;
           END LOOP;

	RAISE NOTICE 'и сюда не попадаем';
	count = count * 1000;
	RAISE NOTICE '%', count;
    END;

    RAISE NOTICE 'сюда попадаем';	
	
    RAISE NOTICE 'Значение count[%] не изменилось после обработки его первым циклом.', count;
    RAISE NOTICE 'Второй цикл, и прямое изменение значения оказались за пределами видимости';

    RETURN;
END; 
$$ LANGUAGE 'plpgsql'




В том-то и дело что у меня не функция, а анонимный блок.
...
Рейтинг: 0 / 0
05.02.2020, 12:13
    #39922753
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
entrypoint
per
Второй вопрос:

пропущено...




Куда его в анонимном блоке вставить?


Куда не вставлю - везде ошибку выдает :-(((



Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
DO 
$$
<<ablock>>
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

    RAISE NOTICE 'и сюда не попадаем';	
RETURN;
END; 
$$ LANGUAGE 'plpgsql'




ОШИБКА: конец функции достигнут без RETURN
SQL-состояние: 2F005
Контекст: функция PL/pgSQL inline_code_block



Можно больше кода для примера ?
Какой код выдает такую ошибку ?


Тот, что в этом сообщении и приведен.
...
Рейтинг: 0 / 0
05.02.2020, 12:16
    #39922758
entrypoint
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
per

В том-то и дело что у меня не функция, а анонимный блок.


вот анонимный блок

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
DO
$$
DECLARE 
	count INT DEFAULT 0;
BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	
	
   <<ablock>> 
   BEGIN 
	   LOOP 
			EXIT ablock WHEN count > 999;
			RAISE NOTICE 'сюда не попадаем';
			count = count + 1;
			RAISE NOTICE '%', count;
           END LOOP;

	RAISE NOTICE 'и сюда не попадаем';
	count = count * 1000;
	RAISE NOTICE '%', count;
    END;

    RAISE NOTICE 'сюда попадаем';	
	
    RAISE NOTICE 'Значение count[%] не изменилось после обработки его первым циклом.', count;
    RAISE NOTICE 'Второй цикл, и прямое изменение значения оказались за пределами видимости';

    RETURN;
END; 
$$ LANGUAGE 'plpgsql'
...
Рейтинг: 0 / 0
05.02.2020, 12:17
    #39922759
Victor Nevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
per, обернуть begin/end
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
DO 
$$
BEGIN
  <<ablock>>
  DECLARE 
	count INT DEFAULT 0;
  BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

      RAISE NOTICE 'и сюда не попадаем';	
  END;    
END;
$$ LANGUAGE 'plpgsql'
...
Рейтинг: 0 / 0
05.02.2020, 12:19
    #39922761
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
qwwq
entrypoint,

метка не там
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
DO
$$
<<generateerror>> -- Д,б
begin
	<<generateNOerror>>
	loop
		raise notice 'yes';
		exit generateNOerror;
	end loop;
	raise notice 'yes2';
	exit generateerror;
	raise notice 'no';
end;
-- попытка вывалиться сюда
$$






А куда тогда надо ставить RETURN?



Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
DO
$$
<<generateerror>> -- Д,б
begin
	<<generateNOerror>>
	loop
		raise notice 'yes';
		exit generateNOerror;
	end loop;
	raise notice 'yes2';
	exit generateerror;
	raise notice 'no';
RETURN;            --<--------ТУТА
end;
-- попытка вывалиться сюда
$$





ЗАМЕЧАНИЕ: yes
ЗАМЕЧАНИЕ: yes2


ОШИБКА: конец функции достигнут без RETURN
CONTEXT: функция PL/pgSQL inline_code_block
********** Ошибка **********

ОШИБКА: конец функции достигнут без RETURN
SQL-состояние: 2F005
Контекст: функция PL/pgSQL inline_code_block








Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
DO
$$
<<generateerror>> -- Д,б
begin
	<<generateNOerror>>
	loop
		raise notice 'yes';
		exit generateNOerror;
	end loop;
	raise notice 'yes2';
	exit generateerror;
	raise notice 'no';
end;
-- попытка вывалиться сюда
RETURN;            --<--------ТУТА
$$




ОШИБКА: ошибка синтаксиса (примерное положение: "RETURN")
LINE 15: RETURN; --<--------ТУТА
^
********** Ошибка **********

ОШИБКА: ошибка синтаксиса (примерное положение: "RETURN")
SQL-состояние: 42601
Символ: 217
...
Рейтинг: 0 / 0
05.02.2020, 12:22
    #39922763
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Victor Nevsky
per, обернуть begin/end
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
DO 
$$
BEGIN
  <<ablock>>
  DECLARE 
	count INT DEFAULT 0;
  BEGIN 
	LOOP 
		count = count + 1;
		RAISE NOTICE '%', count;
		EXIT WHEN count > 999;
	END LOOP;
	
	RAISE NOTICE 'работа продолжается после выхода из цикла';	

        LOOP 
		EXIT ablock WHEN count > 999;
		RAISE NOTICE 'сюда не попадаем';
		count = count + 1;
		RAISE NOTICE '%', count;
	END LOOP;

      RAISE NOTICE 'и сюда не попадаем';	
  END;    
END;
$$ LANGUAGE 'plpgsql'





Ваш вариант отработал без ошибок.


Но как? Получается RETURN вообще не надо ставить?
...
Рейтинг: 0 / 0
05.02.2020, 12:30
    #39922769
Victor Nevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
per, retun - прекращение работы анонимного блока, а вам нужен выход из именованого блока - exit
у вас весь именованный блок = анонимный, то есть получается exit в никуда.
...
Рейтинг: 0 / 0
05.02.2020, 12:33
    #39922771
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Victor Nevsky
per, retun - прекращение работы анонимного блока, а вам нужен выход из именованого блока - exit
у вас весь именованный блок = анонимный, то есть получается exit в никуда.



Смылс такой, что мне надо прервать работы всего анонимного блока при определенном условии. (это условие срабатывает в 10% случаев)



Как сделать в таком случае?
...
Рейтинг: 0 / 0
05.02.2020, 12:35
    #39922774
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Victor Nevsky,
Вот такая схема примерно:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
блок
действия1
цикл1
действия2
цикл2
действия3
цикл3
...
действияN
циклN
конец блока




И в любой момент может сработать условие, как только оно срабатывает - закончить выполнение всего блока.
...
Рейтинг: 0 / 0
05.02.2020, 12:43
    #39922783
Victor Nevsky
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
per, с любого места программы IF (expression = true) THEN raise notice 'return'; RETURN; END IF;
...
Рейтинг: 0 / 0
05.02.2020, 12:48
    #39922788
per
per
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хмурый анонимный блок
Victor Nevsky
per, с любого места программы IF (expression = true) THEN raise notice 'return'; RETURN; END IF;



Верно ли я понял что это можно даже внутри цикла сделать?

А EXIT не использовать совсем?
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Хмурый анонимный блок / 25 сообщений из 35, страница 1 из 2
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]