Copy tables : Utility Procedure « Stored Procedure Function « Oracle PL / SQL






Copy tables

 
SQL>
SQL> CREATE TABLE source (
  2    key NUMBER(5),
  3    value VARCHAR2(50)  );

Table created.

SQL>
SQL>
SQL> CREATE TABLE destination (
  2    key NUMBER(5),
  3    value VARCHAR2(50)  );

Table created.

SQL>
SQL>
SQL>
SQL>
SQL>
SQL> CREATE OR REPLACE PROCEDURE CopyTables AS
  2    v_Key   source.key%TYPE;
  3    v_Value source.value%TYPE;
  4
  5    CURSOR c_AllData IS
  6      SELECT *
  7        FROM source;
  8  BEGIN
  9    OPEN c_AllData;
 10
 11    LOOP
 12      FETCH c_AllData INTO v_Key, v_Value;
 13      EXIT WHEN c_AllData%NOTFOUND;
 14
 15      INSERT INTO destination (key, value)
 16        VALUES (v_Key, TO_NUMBER(v_Value));
 17    END LOOP;
 18
 19    CLOSE c_AllData;
 20  END CopyTables;
 21  /

Procedure created.

SQL>
SQL> show error
No errors.
SQL>
SQL> drop table source;

Table dropped.

SQL>
SQL> drop table destination;

Table dropped.

SQL>
SQL>

 








Related examples in the same category

1.Assert procedure
2.Use stored procedure to output table content
3.emp table lookup
4.Use stored procedure to log message
5.Create a stored procedure to measure a table usage
6.Procedure does not count space
7.File dump procedure
8.Count credits