POST PL/SQL Example (Creation)
Submitted by dave on Wed, 09/18/2024 - 12:25
Description : Basic POST creation example
Method : POST
Source Type : PL/SQL
Returns : 201 for normal creation, 400 for caught exceptions, ORDS generated messages if other error
-- POST : Create New Emp DECLARE MY_NEW_ID NUMBER; c sys_refcursor; BEGIN SELECT MAX(EMPNO)+1 INTO MY_NEW_ID FROM EMP; INSERT INTO EMP ( EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO ) VALUES ( MY_NEW_ID, :ENAME, :JOB, :MGR, :HIREDATE, :SAL, :COMM, :DEPTNO ); COMMIT; :STATUS_CODE:=201; -- Return Matching ID OPEN c FOR SELECT * FROM EMP WHERE EMPNO = MY_NEW_ID; apex_json.write(c); EXCEPTION WHEN OTHERS THEN :STATUS_CODE := 400; :ERRMSG := SQLERRM; END;
Testing
POST https://test.com/ords/apxdev/inventory/test/demo?ENAME=David&JOB=Test Job&MGR=7698&HIREDATE=01-JAN-2024&SAL=1000&COMM=100&DEPTNO=10 [ { "EMPNO":7840 ,"ENAME":"David" ,"JOB":"Test Job" ,"MGR":7698 ,"HIREDATE":"2024-01-01T00:00:00Z" ,"SAL":1000 ,"COMM":100 ,"DEPTNO":10 } ]