1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | CREATE OR REPLACE PROCEDURE credb IS cursor1 INTEGER ; credbsql VARCHAR2(100); BEGIN -- CREATE TABLE명령어 생성 credbsql := 'CREATE TABLE ptest (no number)' ; --CREATE TABLE명령어 화면에 출력 DBMS_OUTPUT.PUT_LINE(credbsql); -- 테이블 생성 cursor1 := DBMS_SQL.OPEN_CURSOR; DBMS_SQL.PARSE(cursor1, credbsql, dbms_sql.v7); DBMS_SQL.CLOSE_CURSOR(cursor1); execute immediate credbsql; -- loop 74 만들기 FOR i IN 1..75 LOOP INSERT INTO ptest ( no ) VALUES (i); END LOOP; END ; / EXEC credb; |
오라클클럽에서 프로시져 공부중입니다^^;
이대로 실행을 하면 테이블은 만들어지는데 데이타가 들어가지 않아요 ㅠㅠ
어떤 부분이 잘못 된건가요? 고수님들 알려주세용~~^^*
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | CREATE OR REPLACE PROCEDURE credb IS credbsql VARCHAR2(100); insertsql VARCHAR2(100); BEGIN -- CREATE TABLE명령어 생성 credbsql := 'CREATE TABLE ptest (no number)' ; execute immediate credbsql; -- loop 75 만들기 FOR i IN 1..75 LOOP insertsql := 'INSERT INTO ptest (no) VALUES (' ||i|| ')' ; execute immediate insertsql; END LOOP; END ; / EXEC credb; |
이렇게 하면 되네요^^;