0
コレクションを使用してあるテーブルから別のテーブルにデータを移動したいという問題が発生しました。plsql:1つのテーブルから別のテーブルにデータを挿入するためにコレクションを使用する
DECLARE
CURSOR c IS SELECT first_name, last_name, salary FROM hr.employees;
TYPE l_data IS RECORD(fname VARCHAR2(25), lname VARCHAR2(25), salary NUMBER(9));
TYPE t_nt IS TABLE OF l_data;
v_lookup t_nt:=t_nt();
v_increment number:=1;
i NUMBER(2);
BEGIN
open c;
loop
fetch c BULK COLLECT INTO v_lookup;
FORALL i IN 1..v_lookup.COUNT
INSERT INTO t2 VALUES v_lookup(i);
EXIT WHEN c%NOTFOUND;
commit;
END LOOP;
close c;
END;
CREATE TABLE t2 AS SELECT first_name, last_name, salary FROM hr.employees WHERE 1 = 2;
select * from t2;
その後、*をt2から選択すると、何も表示されません。 だから私は何が起こるか分からない。 最後に、どうすれば例外を処理するためにbuck_exceptionを使うことができますか?誰でも私に例を示すことができますか?
私はそのループが何であるか分かりません。 –
ブロックを作成した後、t2を作成したようです。 –