PL/SQL PLS_INTEGER type provides some performance. If PLS_INTEGER is used, oracle uses the native machine algorithm. All other numeric data types are the same as the NUMBER data type. The result of using the C Language Algorithm Library is that the PLS_INTEGER value processing speed is much faster than the NUMBER integer, PLS_INTEGER does not encounter compatibility issues when porting the hardware platform www.2cto.com for intensive integer operations. Think recommends that you use PLS_INTEGER. If the PLS_INTEGER and NUMBER types of data exchange frequently, we recommend that you use NUMBER at the beginning. If you have requirements on precision, do not use it. Because PLS_INTEGER is used for integer calculation, the result will be tested in an experiment as follows: www.2cto.com [SQL] hr @ ORCL> ed Wrote file afiedt. buf 1 DECLARE 2 j PLS_INTEGER: = 0; 3 BEGIN 4 FOR I IN 1 .. 1000000 5 LOOP 6 j: = I + 1; 7 IF j = 1000 8 THEN 9 dbms_output.put_line ('Hello think'); 10 END IF; 11 END LOOP; 12 * END; hr @ ORCL>/Hello Think PL/SQL procedure successfully completed. elapsed: 00:00:00. 28 hr @ ORCL> ed Wrote file afiedt. buf 1 DECLARE 2 j NUMBER: = 0; 3 BEGIN 4 FOR I IN 1 .. 1000000 5 LOOP 6 j: = I + 1; 7 IF j = 1000 8 THEN 9 dbms_output.put_line ('Hello think'); 10 END IF; 11 END LOOP; 12 * END; hr @ ORCL>/Hello Think PL/SQL procedure successfully completed. elapsed: 00:00:00. 36