UPDATE statement involving entire records : ROWTYPE « PL SQL Data Types « Oracle PL/SQL Tutorial






SQL>
SQL>
SQL>
SQL> create table product(
  2     product_id number(4)     not null,
  3     product_description varchar2(20) not null
  4  );

Table created.

SQL>
SQL> insert into product values (1,'Java');

1 row created.

SQL> insert into product values (2,'Oracle');

1 row created.

SQL> insert into product values (3,'C#');

1 row created.

SQL> insert into product values (4,'Javascript');

1 row created.

SQL> insert into product values (5,'Python');

1 row created.

SQL>
SQL>
SQL>
SQL> DECLARE
  2    TYPE myRecord IS RECORD
  3      (product_id NUMBER,
  4       product_description VARCHAR2(20));
  5    v_example_rec myRecord;
  6  BEGIN
  7    v_example_rec.product_id :=99;
  8    v_example_rec.product_description :='Web';
  9    UPDATE product SET ROW =v_example_rec WHERE product_id =99;
 10    COMMIT;
 11  END;
 12  /

PL/SQL procedure successfully completed.

SQL>
SQL> drop table product;

Table dropped.








21.27.ROWTYPE
21.27.1.Declare ROWTYPE variable
21.27.2.Reference attribute in a ROWTYPE variable
21.27.3.Select value into the %ROWTYPE type variable
21.27.4.Using a Weak REF CURSOR and %ROWTYPE
21.27.5.Defining and using a cursor-oriented record
21.27.6.INSERT statement involving entire records
21.27.7.UPDATE statement involving entire records
21.27.8.Use rowtype with object table
21.27.9.rowtype.iterations
21.27.10.Use table column type as the record attribute type
21.27.11.Select * into table%rowtype
21.27.12.PLS-00382: expression is of wrong type