Reputation: 67
I'm creating Update Stored Procedure in Toad. When I'm executing the query it returns me an error like this.
1/51 PLS-00103: Encountered the symbol "(" when expecting one of the following:
:= . ) , @ % default character
Heres my Code:
I've tried to change the AS
to IN
but still same error
Create Or Replace Procedure SP_EMPLOYEE_UPDATE(P_EMPLOYEEID VARCHAR2(20 CHAR),
P_EMPLOYEENAME VARCHAR2(100 CHAR),
P_STATUS VARCHAR2(50 CHAR),
P_SUPERIORID VARCHAR2(20 CHAR),
P_MANAGERSUPERIORID VARCHAR2(20 CHAR),
P_BFG VARCHAR2(10 CHAR),
P_DATEHIRED Date,
P_DESIGNATION VARCHAR2(100 CHAR),
P_JOBGRADE NUmber,
P_EMAILADDRESS VARCHAR2(100 CHAR),
P_PRODUCTLINE VARCHAR2(80 BYTE),
P_STATION VARCHAR2(80 BYTE),
P_MACHINE VARCHAR2(80 BYTE),
P_OPERATIONGROUP VARCHAR2(80 BYTE),
P_ISACTIVE VARCHAR2(1 BYTE))
AS
Begin
Update REFEMPLOYEES set REFEMPLOYEES.EMPLOYEENAME = P_EMPLOYEENAME , REFEMPLOYEES.STATUS= P_STATUS,REFEMPLOYEES.SUPERIORID = P_SUPERIORID,REFEMPLOYEES.MANAGERSUPERIORID= P_MANAGERSUPERIORID,REFEMPLOYEES.BFG = P_BFG,
REFEMPLOYEES.DATEHIRED = P_DATEHIRED,REFEMPLOYEES.DESIGNATION = P_DESIGNATION,REFEMPLOYEES.JOBGRADE = P_JOBGRADE,REFEMPLOYEES.EMAILADDRESS = P_EMAILADDRESS,REFEMPLOYEES.PRODUCTLINE = P_PRODUCTLINE,REFEMPLOYEES.STATION = P_STATION,
REFEMPLOYEES.MACHINE = P_MACHINE,REFEMPLOYEES.OPERATIONGROUP = P_OPERATIONGROUP,REFEMPLOYEES.ISACTIVE = P_ISACTIVE
Where REFEMPLOYEES.EMPLOYEEID = P_EMPLOYEEID;
End
Upvotes: 0
Views: 185
Reputation: 35900
Your code should look like following ideally:
CREATE OR REPLACE PROCEDURE SP_EMPLOYEE_UPDATE (
P_EMPLOYEEID VARCHAR2,
P_EMPLOYEENAME VARCHAR2,
P_STATUS VARCHAR2,
P_SUPERIORID VARCHAR2,
P_MANAGERSUPERIORID VARCHAR2,
P_BFG VARCHAR2,
P_DATEHIRED DATE,
P_DESIGNATION VARCHAR2,
P_JOBGRADE NUMBER,
P_EMAILADDRESS VARCHAR2,
P_PRODUCTLINE VARCHAR2,
P_STATION VARCHAR2,
P_MACHINE VARCHAR2,
P_OPERATIONGROUP VARCHAR2,
P_ISACTIVE VARCHAR2
) AS
BEGIN
UPDATE REFEMPLOYEES
SET
REFEMPLOYEES.EMPLOYEENAME = P_EMPLOYEENAME,
REFEMPLOYEES.STATUS = P_STATUS,
REFEMPLOYEES.SUPERIORID = P_SUPERIORID,
REFEMPLOYEES.MANAGERSUPERIORID = P_MANAGERSUPERIORID,
REFEMPLOYEES.BFG = P_BFG,
REFEMPLOYEES.DATEHIRED = P_DATEHIRED,
REFEMPLOYEES.DESIGNATION = P_DESIGNATION,
REFEMPLOYEES.JOBGRADE = P_JOBGRADE,
REFEMPLOYEES.EMAILADDRESS = P_EMAILADDRESS,
REFEMPLOYEES.PRODUCTLINE = P_PRODUCTLINE,
REFEMPLOYEES.STATION = P_STATION,
REFEMPLOYEES.MACHINE = P_MACHINE,
REFEMPLOYEES.OPERATIONGROUP = P_OPERATIONGROUP,
REFEMPLOYEES.ISACTIVE = P_ISACTIVE
WHERE
REFEMPLOYEES.EMPLOYEEID = P_EMPLOYEEID;
END SP_EMPLOYEE_UPDATE;
/
Cheers!!
Upvotes: 1