Guest User

Untitled

a guest
Sep 6th, 2018
167
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.26 KB | None | 0 0
  1. Pass varray variables into stored procedure - basic
  2. create table emails (
  3. user_id varchar2(10),
  4. friend_name varchar2(20),
  5. email_address varchar2(20));
  6.  
  7. create or replace type email_array as varray(100) of varchar2(20);
  8. /
  9. show errors
  10. create or replace type friend_array as varray(100) of varchar2(20);
  11. /
  12. show errors
  13.  
  14. create or replace procedure update_address_book(
  15. p_user_id in varchar2,
  16. p_friend_name friend_array,
  17. p_email_addresses email_array)
  18. is
  19. begin
  20. delete from emails where user_id = p_user_id;
  21. forall i in indices of p_email_addresses
  22. insert into emails (user_id, friend_name, email_address)
  23. values (p_user_id, p_friend_name(i), p_email_addresses(i));
  24. end update_address_book;
  25.  
  26. declare
  27. type email_list is varray(100) of varchar2(20);
  28. type friend_list is varray(100) of varchar2(20);
  29. emails email_list;
  30. friends friend_list;
  31. begin
  32. emails :=email_list('khwaja@gmail.com','sayya@gmail.com','mayya@gmail.com');
  33. friends := friend_list('kwaja','sayya','mayya');
  34. execute update_address_book('1',emails,friends);
  35. end;
  36.  
  37. declare
  38. emails email_array;
  39. friends friend_array;
  40. begin
  41. emails := email_array('khwaja@gmail.com','sayya@gmail.com','mayya@gmail.com');
  42. friends := friend_array('kwaja','sayya','mayya');
  43. update_address_book('1',friends,emails);
  44. end;
  45. /
Add Comment
Please, Sign In to add comment