Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Теоретические аспекты и практические реализации создания, внедрения и использования баз данных, СУБД, хранилищ.
  • Страница:
  • 1

ТЕМА:

Oracle. forall в динамике 12 года 10 мес. назад #1607

Можно ли использовать динамику с FORALL.
Что нибудь типа:
execute immediate 
        '
        FORALL nI IN 1 .. :nIndexOutTable
          INSERT INTO IMP_BANKS_OUT
                      (ROWID_ID, SRC_GROUP_CODE, DICTIONARY_ID, SRC_ROWID)
               VALUES (:OutTbl_ROW_ID(nI), :OutTbl_SRC_GROUP_CODE(nI), :OutTbl_DICTIONARY_ID(nI), :OutTbl_SRC_ROWID(nI))'
               using nIndexOutTable, OutTbl_ROW_ID, OutTbl_SRC_GROUP_CODE, OutTbl_DICTIONARY_ID, OutTbl_SRC_ROWID
               ;

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle. forall в динамике 12 года 10 мес. назад #1608

create table test_tab(val number);
 
Table created
create type number_table as table of number;
/
 
Type created
declare
  vals number_table := number_table(1,2,3);
begin
  execute immediate 'begin
                       forall i in 1..:cnt
                         insert into test_tab values (:vals(i));
                     end;'
              using vals.count,vals;
 
end;
/
 
PL/SQL procedure successfully completed
select * from test_tab;
 
       VAL
----------
         1
         2
         3
 
SQL>

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle. forall в динамике 12 года 10 мес. назад #1609

Вот:
FORALL nI IN 1 .. nIndexOutTable
  execute immediate 'INSERT INTO IMP_BANKS_OUT (ROWID_ID, SRC_GROUP_CODE, DICTIONARY_ID, SRC_ROWID) VALUES (:1, :2, :3, :4)'
    using OutTbl_ROW_ID(nI), OutTbl_SRC_GROUP_CODE(nI), OutTbl_DICTIONARY_ID(nI), OutTbl_SRC_ROWID(nI)
;

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle. forall в динамике 12 года 10 мес. назад #1931

Да можно использовать динамику с FORALL. только если стоит мощный сервер иначе могут быть сбои работы Oracle

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle. forall в динамике 12 года 10 мес. назад #2124

VALUES (:OutTbl_ROW_ID(nI), это что означает кто может подробно рассказать а то давно хотел разобраться

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
Время создания страницы: 0.794 секунд