User Documentation
Ispirer Capabilities - Oracle Migration
Pricing
Oracle %ROWTYPE for cursor declaration to HiRDB
Oracle:
CREATE OR REPLACE PROCEDURE cur1_proc
IS
CURSOR cur1 IS SELECT c1,c2 FROM t4;
cur1_rec cur1%ROWTYPE;
BEGIN
OPEN cur1;
LOOP
FETCH cur1 INTO cur1_rec;
EXIT WHEN cur1%NOTFOUND;
INSERT INTO t5 (c1,c2)
VALUES( cur1_rec.c1, cur1_rec.c2 );
END LOOP;
CLOSE cur1;
END;
HiRDB:
CREATE PROCEDURE cur1_proc()
BEGIN
DECLARE SWV_CUR1_REC_C1 FLOAT;
DECLARE SWV_CUR1_REC_C2 TIMESTAMP;
DECLARE cur1 CURSOR FOR SELECT c1,c2 FROM t4;
OPEN cur1;
SWL_Label: WHILE 1 = 1 DO
FETCH cur1 INTO SWV_CUR1_REC_C1, SWV_CUR1_REC_C2;
IF SQLCODE = 100 THEN
leave SWL_Label;
END IF;
/* SQLWays: This conversion has inappropriate possibility */
INSERT INTO t5(c1,c2)
VALUES(SWV_CUR1_REC_C1, SWV_CUR1_REC_C2);
END WHILE SWL_Label;
CLOSE cur1;
END;
END_PROC;