powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ошибка PLS-00201 при объявлении переменной
11 сообщений из 11, страница 1 из 1
ошибка PLS-00201 при объявлении переменной
    #32136587
bigman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
declare
st number := 1000000;
t varchar2 (100) := 'Text to be inserted into Exam';
t1 varchar2 (200);
....

PLS-00201: identifier 'Text to be inserted into Exam' must be declared
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32136594
Фотография Oracle X-pert
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
A probel megdy varchar2 i (100) zachem postavil?
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32136597
bigman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не помогло :(
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32136621
bigman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ошибка в другом ... в неправильной передачи этой переменной ...
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32136668
bigman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
все написано правильно, но ошибка таже самая ...

declare
st number := 1000000;
text varchar2(100) := 'Text to be inserted into Exam';
t varchar2(200);
begin
t := 'Test(' || st || ',' || '"' || text || '"' || ')';
var_pack.run_proc(t);


Procedure Run_Proc ( stmt IN VARCHAR2 ) is
num BINARY_INTEGER := 0;
BEGIN
dbms_job.submit( num, stmt||';', SYSDATE );
COMMIT;
END;
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32138468
bigman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
declare
-- Local variables here
st number := 1000000;
text varchar2(100) := 'Text to be inserted into Exam';
begin
Var_Pack.Run_Proc( 'Test_pipe(' || st || ',' || '"' || text || '"' || ')' );
end;

Procedure Run_Proc ( stmt IN VARCHAR2 ) is
num BINARY_INTEGER := 0;
BEGIN
dbms_job.submit( num, stmt||';', SYSDATE );
COMMIT;
END;

ошибка: PLS-00201: identifier 'Text to be inserted into Exam' must be declared
PL/SQL statement ignored
затем ORA-06512: line 18 - Это dbms_job.submit( num, stmt||';', SYSDATE );


В чем же дело ?
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32138487
Александр Б
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBMS_JOB.SUBMIT( JOB OUT BINARY_INTEGER,
WHAT IN VARCHAR2, NEXT_DATE IN DATE DEFAULTSYSDATE,
INTERVAL IN VARCHAR2 DEFAULT 'NULL',
NO_PARSE IN BOOLEAN DEFAULT FALSE,
INSTANCE IN BINARY_INTEGER DEFAULT ANY_INSTANCE,
FORCE IN BOOLEAN DEFAULT FALSE)

Здесь WHAT - это SQL-оператор иди неименованный блок PL/SQL
А 'Text to be inserted into Exam' ни то ни другое :)
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32138489
Angel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вместо ' " ' поставь ' ' ' '. Он у тебя не может найти переменную "Text to be inserted into Exam"
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32138507
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"В чем же дело ?"

Дело в том, что аккуратней надо код писать.
Что за х......ю ты передаёшь?
Код: plaintext
1.
'Test_pipe(' || st || ',' || '"' || text || '"' || ')' 


Тебе нужно передать значение '1000000,Text to be inserted into Exam'?
Тогда так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
declare 
 -- Local variables here 
 
st number :=  1000000 ; 
text varchar2( 100 ) := 'Text to be inserted into Exam'; 
begin 
Run_Proc( Test_pipe(st||','||text) ); 
end; 
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32138540
Фотография softy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если же в Run_Proc нужно передать не значение, котрое возвращает Test_pipe, а строку:
Код: plaintext
 "TestPipe('1000000,Text to be inserted into Exam')"  
то так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
declare 
 -- Local variables here 
 
st number :=  1000000 ; 
text varchar2( 100 ) := 'Text to be inserted into Exam'; 
begin 
Run_Proc( 'Test_pipe('||''''||st||','||text||''''||')'); 
end; 
...
Рейтинг: 0 / 0
ошибка PLS-00201 при объявлении переменной
    #32138557
bigman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
спасибо Angel и softbuilder
никогда не подумал что можно "мешать" кавычки
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / ошибка PLS-00201 при объявлении переменной
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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