Search code examples
sqloracle-databaseprocedure

Procedure Insert value from other table


I am getting error in below simple procedure

Create or Replace PROCEDURE "My Procedure" 
  (
    vendor_name in VARCHAR2
  )
BEGIN
INSERT INTO cust_vendors_test (cust_vendor_name) 
select  pv.vendor_name from po_vendors@prod09 pv
END;
/

Solution

  • There are two missing things IS in header of procedure, and semicolon after sql. Below code works:

    Create or Replace PROCEDURE "My Procedure" 
      (
        vendor_name in VARCHAR2
      ) IS
    BEGIN
    INSERT INTO cust_vendors_test (cust_vendor_name) 
    select  pv.vendor_name from po_vendors@prod09 pv;
    END;
    /
    

    But you'd better naming this procedure like My_Procedure instead of "My Procedure" to alleviate calling.