powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / создание процедуры
7 сообщений из 7, страница 1 из 1
создание процедуры
    #34703965
PitBull
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет. Подскажите как написать процедуру , которая вызывается при ошибке при вставке в таблице ?
...
Рейтинг: 0 / 0
создание процедуры
    #34704036
PitBull
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите как перехватить исключение в процедуре, если insert данных не прошёл ?
...
Рейтинг: 0 / 0
создание процедуры
    #34704063
Фотография pamir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
begin
<тут твои действия. Например инсерты>
exception
when <тут тип ошибки, который ловишь. Если все - others> then
<тут чего делать, если стряслось>
end;
...
Рейтинг: 0 / 0
создание процедуры
    #34704066
Фотография pamir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так красивее

Код: plaintext
1.
2.
3.
4.
5.
begin
  <тут твои действия. Например инсерты>
exception
  when <тут тип ошибки, который ловишь. Если все - others> then
    <тут чего делать, если стряслось>
end;
...
Рейтинг: 0 / 0
создание процедуры
    #34704156
PitBull
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо
...
Рейтинг: 0 / 0
создание процедуры
    #34704516
PitBull
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите где в этой пройедуре ошибка?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
begin
	INSERT INTO table1('fields')
	VALUES ('params');
	
	exception when others then 
	INSERT INTO table2('fields')
	VALUES ('params');
	return  0 ;
end;

ругается
ERROR: control reached end of function without RETURN

????????
...
Рейтинг: 0 / 0
создание процедуры
    #34704751
Фотография pamir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PitBullподскажите где в этой пройедуре ошибка?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
begin
	INSERT INTO table1('fields')
	VALUES ('params');
	
	exception when others then 
	INSERT INTO table2('fields')
	VALUES ('params');
	return  0 ;
end;

ругается
ERROR: control reached end of function without RETURN

????????
Ну он же тебе сказал - дошел до конца функции, а ретурна не нашел.
У тебя ретурн отработает только в случае эксепшена. А если все хорошо....
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / создание процедуры
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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