Oracle: update table with object type udt
Use an alias. It is mandatory when updating a table with an object type.
UPDATE


  t_alias
  
  Specify a correlation name (alias) for the table, view, or subquery to
  be referenced elsewhere in the statement. This alias is required if
  the DML_table_expression_clause references any object type attributes
  or object type methods.


Create table client (client_id number,person person_ty);

insert into client 
values(1,person_ty('pinco pallo',
         address_ty('Boulevard street' ,'torino','to',10100)));
Commit;

...

update client c
set c.person.address.prov='MI'
where c.client_id=1;

1 row updated.