Advertisement
PaulBailey

SP to INSERT row to TABLE

Apr 4th, 2017
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 1.13 KB | None | 0 0
  1. CREATE OR REPLACE PROCEDURE C_EVENT(
  2.     IN p_FILEID_FK BIGINT,
  3.      IN p_KEYVALUE VARCHAR(100),
  4.      IN p_PROCESSED CHAR(1))
  5. LANGUAGE SQL
  6. MODIFIES SQL DATA
  7. DYNAMIC RESULT SETS 1
  8. SET OPTION DATFMT=*ISO
  9.  
  10. P1: BEGIN
  11.     DECLARE num_records INTEGER DEFAULT 0;
  12.     DECLARE SQLCODE INTEGER DEFAULT 0;
  13.  
  14.     -- Return auto-values to caller
  15.     DECLARE @prvSqlCode SMALLINT ;
  16.     DECLARE CursorNotOpen CONDITION FOR '24501' ;
  17.  
  18.     DECLARE cursor1 CURSOR WITH RETURN FOR
  19.     SELECT 'EVENTID, CREATED, LASTUPDATED' AS rlist, EVENTID,
  20.              FILEID_FK,
  21.              KEYVALUE,
  22.              PROCESSED,
  23.              CREATED,
  24.              LASTUPDATED
  25.     FROM FINAL TABLE (
  26.     INSERT INTO BEN_EVENT (FILEID_FK,
  27.              KEYVALUE,
  28.              PROCESSED)
  29.     VALUES(p_FILEID_FK,
  30.              p_KEYVALUE,
  31.              p_PROCESSED));
  32.  
  33.     DECLARE CONTINUE HANDLER FOR CursorNotOpen
  34.         SET @prvSqlCode = SQLCODE ;
  35.  
  36.     CLOSE cursor1;
  37.     OPEN cursor1;
  38.  
  39.     IF SQLCODE < 0 THEN
  40.         SET num_records = SQLCODE;
  41.     ELSE
  42.         GET DIAGNOSTICS num_records = ROW_COUNT;
  43.     END IF;
  44.     RETURN num_records;
  45. END P1;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement