次のようなプログラムブロックを作成しました。
DECLARE
recCount pls_integer:=0;
idCounter pls_integer:=0;
BEGIN
SELECT COUNT(value) into recCount FROM classname_ WHERE value='CONNECT_BLOG_INTERPRETER';
SELECT MAX(classnameid)+1 into idCounter FROM classname_;
IF recCount = 0 THEN
INSERT INTO classname_ (classnameid, value) values (idCounter, 'CONNECT_BLOG_INTERPRETER');
DBMS_OUTPUT.PUT_LINE('Inserting Record CONNECT_BLOG_INTERPRETER');
ELSE
DBMS_OUTPUT.PUT_LINE('Record CONNECT_BLOG_INTERPRETER already exists.');
END IF;
END;
このステートメントは問題なく実行されますが、追加ステートメントを次のように実行したい場合:
select * from emp;
これにより、次のようなエラーが発生します。
Error report:
ORA-06550: line 14, column 1:
PLS-00103: Encountered the symbol "SELECT"
06550. 00000 - "line %s, column %s:\n%s"
*Cause: Usually a PL/SQL compilation error.
*Action:
しかし今、私はこれが一緒に働く必要があります。複数のステートメントが次々に実行される DB-Patching のケースを考えてみましょう。
私を案内してください。