Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> комструкция try catch 
V
    Опции темы
VisMaster
Дата 28.7.2009, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 16.3.2007
Где: СПб

Репутация: нет
Всего: нет



Подскажите пожалуйста в чем проблема, уже все форумы перерыл, вроде все должно работать.
Код

CREATE OR REPLACE 
TRIGGER TRIGGER1
AFTER INSERT ON "SA"."ACT_REG" 

DECLARE     MAX_ACT_ID NUMBER:=0;
                   ITEM_SC_STR varchar2(255):='0';
                   ITEM_SC_INT NUMBER:=0;
            
BEGIN

SELECT max(ACT_REG_ID) INTO MAX_ACT_ID FROM ACT_REG;
      
SELECT ITEM.ITEM_SC  INTO ITEM_SC_STR
      FROM ACT_REG, INCIDENT, ITEM
      WHERE ( ACT_REG.INCIDENT_ID = INCIDENT.INCIDENT_ID ) 
      AND ( INCIDENT.ITEM_ID = ITEM.ITEM_ID ) 
      AND ( ACT_REG.ACT_REG_ID = MAX_ACT_ID );
      
BEGIN TRY                                                                         --ругается на эту конструкцию
     ITEM_SC_INT:=CAST(ITEM_SC_STR AS NUMBER);  
END TRY;

  IF ITEM_SC_INT!=0 THEN
  END IF;
END TRIGGER1;


Ошибка следующая:
Код

SA    TRIGGER1    TRIGGER    1    21    1    ERROR    103    "PLS-00103: Встретился символ "ITEM_SC_INT" в то время как ожидалось одно из следующих:

   := . ( @ % ;
Символ "." заменен на "ITEM_SC_INT", чтобы можно было продолжать.
"

PM MAIL   Вверх
Zloxa
Дата 28.7.2009, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 37
Всего: 161



Block Declaration
Если Вы хотите использовать "TRY" как метку следует писать так:
Код

  <<try>>
  begin
    --код здесь
  end try;

но, думаю вам не метка нужна. Я, как и Оракл, не понял Вашей конструкции.
Думаю Вам подойдет протсто
Код

begin
  ...
except
  when ....
end;




--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
VisMaster
Дата 28.7.2009, 16:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 147
Регистрация: 16.3.2007
Где: СПб

Репутация: нет
Всего: нет



Спасибо exception мне нужно было
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Oracle"
Zloxa
LSD

Данный раздел предназначен для обсуждения проблем с Oracle Database, другие продукты Oracle здесь не обсуждаются. Просьба при создании темы, придерживаться следующих правил:

  • при создании темы давайте ей осмысленное название, описывающее суть проблемы
  • указывайте используемую версию базы, способ соединения и язык программирования
  • при ошибках обязательно приводите код ошибки и сообщение сервера
  • приводите код в котором возникла ошибка, по возможности дайте тестовый пример демонстрирующий ошибку
  • при вставке кода используйте соответсвующие теги: [code=sql] [/code] для подсветки SQL и PL/SQL кода, [code=java] [/code] - для Java, и т.д.

  • документация по Oracle: 9i, 10g, 11g
  • книги по Oracle можно поискать здесь
  • действия модераторов можно обсудить здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, LSD.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Oracle | Следующая тема »


 




[ Время генерации скрипта: 0.1471 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.