Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вопрос по dynamic SQL / 5 сообщений из 5, страница 1 из 1
08.09.2017, 15:28
    #39518279
Alexx_Pol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по dynamic SQL
При выполнении блока
Код: plsql
1.
2.
3.
4.
5.
begin
execute immediate 'create table table1 (tab1 number)'; 
insert into table1 values(1);
commit;
end;


получаю
ORA-06550: line 3, column 13:
PL/SQL: ORA-00942: table or view does not exist
ORA-06550: line 3, column 1:
PL/SQL: SQL Statement ignored
Получается, таблица не успевает создаться до инсерта. Почему?
Спасибо.
...
Рейтинг: 0 / 0
08.09.2017, 15:32
    #39518283
env
env
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по dynamic SQL
Alexx_Pol,

Таблицы нет на момент работы парсера. Это не mssql, который пропускает на стадии компиляции 80% неработающего кода и падает в рантайме.
...
Рейтинг: 0 / 0
08.09.2017, 17:21
    #39518357
Alexx_Pol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по dynamic SQL
env,

то есть такие операции нужно разбивать на 2 блока? в одном никак?
Спасибо.
...
Рейтинг: 0 / 0
08.09.2017, 17:23
    #39518360
Stawros
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по dynamic SQL
Alexx_Pol,
Если все обращения к table1 тоже завернуть в динамический sql, то можно и одним блоком.
...
Рейтинг: 0 / 0
08.09.2017, 17:34
    #39518368
Alexx_Pol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по dynamic SQL
Stawros,

точно, спасибо!
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Вопрос по dynamic SQL / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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