powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Использование объектных типов в динамическом SQL
8 сообщений из 8, страница 1 из 1
Использование объектных типов в динамическом SQL
    #39597105
Lemkoleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день. Подскажите, есть ли возможность использования объектных типов в качестве передаваемых параметров в конструкции USING в встроенном динамическом SQL? Я пытаюсь вызвать выполнение процедуры "PROC_NAME" через EXECUTE IMMEDIATE. Которая, в качестве параметра, получает объектный тип. При исполнении, выбрасывает ошибку "PLS-00904: insufficient privilege to access object PROC_NAME".
...
Рейтинг: 0 / 0
Использование объектных типов в динамическом SQL
    #39597107
Lemkoleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл добавить: все объекты (сам тип, процедура) являются собственностью пользователя, под которым выполняется даная операция
...
Рейтинг: 0 / 0
Использование объектных типов в динамическом SQL
    #39597177
Фотография Павел Воронцов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lemkoleg,

Передавай в Immediate блок параметры для инициализации объекта там. Типа такого
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
declare v$sql varchar2(200);
begin
v$sql := 'DECLARE obj$var my_obj := my_obj(:1,:2);
BEGIN
-- Some code using obj$var
NULL;
END;'
EXECUTE IMMEDIATE v$sql USING 'First param',100500;
end;
...
Рейтинг: 0 / 0
Использование объектных типов в динамическом SQL
    #39597191
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lemkolegв качестве параметра, получает объектный типОракл поддерживает только anytype переменные типа тип.
...
Рейтинг: 0 / 0
Использование объектных типов в динамическом SQL
    #39597196
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-Lemkolegв качестве параметра, получает объектный типОракл поддерживает только anytype переменные типа тип.Чего?
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SQL> declare
  2    x sys.dbms_xplan_type := sys.dbms_xplan_type('bla-bla');
  3  begin
  4    execute immediate 'declare y sys.dbms_xplan_type := :y; begin dbms_output.put_line(y.plan_table_output); end;' using x;
  5  end;
  6  /
bla-bla

PL/SQL procedure successfully completed.
...
Рейтинг: 0 / 0
Использование объектных типов в динамическом SQL
    #39597206
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Elic-2-пропущено...
Оракл поддерживает только anytype переменные типа тип.Чего?Ты передаешь не тип, а переменную типа object
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
select type_name, typecode
from dba_types
where owner = 'SYS' and type_name in ('DBMS_XPLAN_TYPE', 'ANYTYPE');

TYPE_NAME            TYPECODE  
-------------------- ----------
ANYTYPE              ANYTYPE   
DBMS_XPLAN_TYPE      OBJECT    
...
Рейтинг: 0 / 0
Использование объектных типов в динамическом SQL
    #39597208
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-2-Ты передаешь не тип, а переменную типа objectБессмысленная казуистика. Тебе бы дела шить.
...
Рейтинг: 0 / 0
Использование объектных типов в динамическом SQL
    #39597218
Lemkoleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Павел Воронцов,
Спасибо, попробую.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Использование объектных типов в динамическом SQL
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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