powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / execute immediate with %rowtype
2 сообщений из 2, страница 1 из 1
execute immediate with %rowtype
    #39288784
test__user
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!

Есть процедурка

Код: plsql
1.
2.
3.
4.
5.
6.
procedure p1(my_row my_table%rowtype)
is
begin
/*source*/
null;
end;



я хочу вызвать ее так:

Код: plsql
1.
2.
src := 'begin p1(:my_row); end;';
execute immediate src  using my_row;



Получаю

PLS-00457: expressions have to be of SQL types

не могу разобраться как обойти эту ошибку, помогите пожалуйста.
...
Рейтинг: 0 / 0
execute immediate with %rowtype
    #39288812
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
test__userкак обойти эту ошибкуЕсли не в состоянии понять ошибку, то переходить на 12c.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
SQL> create or replace package plch_pkg
  2  as
  3    subtype TRow is user_users%rowtype;
  4  end plch_pkg;
  5  /

Package created.

SQL> declare
  2    r plch_pkg.TRow;
  3  begin
  4    select * into r from user_users;
  5    execute immediate 'declare r plch_pkg.TRow := :1; begin dbms_output.put_line(r.username); end;' using r;
  6  end;
  7  /
ELIC

PL/SQL procedure successfully completed.

SQL> drop package plch_pkg;

Package dropped.

Disconnected from Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

RTFM More PL/SQL-Only Data Types Can Cross PL/SQL-to-SQL Interface (FAQ)
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / execute immediate with %rowtype
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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