0

我已宣布如下记录

TYPE pg_wad_usr_portgrp_rec IS RECORD (
   user_id npe_user.user_id%TYPE,
   Portal_grp_name npe_portal_grp.protal_group_name%TYPE
);

当我在以下过程中使用相同的值时出现错误

PROCEDURE add_rmv_usr_portal_grp (
                       p_user_portal_grp   IN   pg_wad_usr_portgrp_tab,
                       p_status            OUT   VARCHAR2 )
Begin
pg_wad_usr_portgrp_rec := p_user_portal_grp;

错误 :

02:34:11.795    DBMS    npeproc -- PLS-00321: expression 'PG_WAD_USR_PORTGRP_REC' is inappropriate as the left hand side of an assignment statement
4

2 回答 2

0

该表达式未指定可以为其分配值的变量。例如,函数 SYSDATE 不能出现在赋值语句的左侧

类型 pg_wad_usr_portgrp_rec 是记录 (user_id npe_user.user_id%TYPE) pg_wad_usr_portgrp_data pg_wad_usr_portgrp_rec;

于 2013-11-26T12:19:03.663 回答
0

首先,定义是 pg_wad_usr_portgrp_rec 和参数类型 pg_wad_usr_portgrp_tab 所以不确定是否需要使用复合类型或复合类型的集合。无论如何,您不能为类型定义赋值。

DECLARE
  TYPE pg_wad_usr_portgrp_rec IS RECORD 
  (
     user_id npe_user.user_id%TYPE,
     Portal_grp_name npe_portal_grp.protal_group_name%TYPE
  );

  TYPE pg_wad_usr_portgrp_tab IS TABLE OF pg_wad_usr_portgrp_rec;

  PROCEDURE add_rmv_usr_portal_grp (
           p_user_portal_grp   IN   pg_wad_usr_portgrp_tab,
           p_status            OUT   VARCHAR2) AS

    lpg_wad_usr_portgrp_tab pg_wad_usr_portgrp_tab;
  BEGIN
    lpg_wad_usr_portgrp_tab := p_user_portal_grp;
  END;
BEGIN
  null;
END;
/ 
于 2018-06-06T09:16:58.797 回答