Ошибка запуска Oracle 10gR2 - PullRequest
       27

Ошибка запуска Oracle 10gR2

0 голосов
/ 03 августа 2010

У меня Oracle 10gR2. Я пытаюсь создать автоинкрементный триггер. Вот образец:

CREATE SEQUENCE TEST_SEQ
INCREMENT BY 1
START WITH 1
NOMAXVALUE
/
CREATE TABLE TESTER  (
ID_TESTER INTEGER NOT NULL,
   VAL VARCHAR2(20) NOT NULL
)
/
CREATE OR REPLACE TRIGGER TIB_TESTER BEFORE INSERT
ON TESTER FOR EACH ROW 
BEGIN
SELECT TEST_SEQ.NEXTVAL 
INTO :NEW.ID_TESTER
FROM DUAL;
END;
/

Создание триггера выдает предупреждение:

предупреждение: ORA-24344: успех с ошибка компиляции

И когда я получаю значение ошибки:

select OCI_SUCCESS_WITH_INFO;
/

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

ошибка: ORA-00923: ключевое слово FROM отсутствует нашел там, где ожидал

Ответы [ 2 ]

3 голосов
/ 03 августа 2010

Какой клиент вы используете для выполнения этих команд?ORA-24344 является специфической ошибкой.

В SQL * PLus мы можем получить дополнительную информацию об ошибках компиляции, например:

SQL>  show errors

Что касается ошибки ORA-00923, то есть потому, что вВерсия SQL Oracle, которую мы всегда должны выбирать из таблицы.Поэтому вы должны выполнить

select OCI_SUCCESS_WITH_INFO
from dual
/

Я не уверен, насколько это имеет смысл, но, по крайней мере, вы не получите ошибку.


«Это была проблема Navicat»

Меня это не удивляет, так как я запускаю ваш код для своей базы данных, и она создается без помех.

0 голосов
/ 27 мая 2014

Может быть, это кому-нибудь пригодится:

Если вы используете Oracle 10g и драйвер OCI, ORA-24344 показывает, когда триггер имеет знак возврата каретки (\ r) в коде, например.файл создан в стиле конца строки в Windows.

...