1. ホーム

PL/SQL使用時にORA-06550エラーが発生しました。

2022-02-13 06:18:19

PL/SQLブロックの中でテーブル作成構文を実行する、など。

開始

    empからselect *としてテーブルemp_tmpを作成します。

を終了します。

SQL*plus で実行すると、ORA-06550 エラーが発生します。

これは、PL/SQLのコードではDML文しか使用できないためで、DDL文を直接コードで使用すると、上記のエラーが発生します。PL/SQLでDDL文を扱う方法は、ダイナミックSQLを使用することで、上記のコードを以下のコードに変更すると通ります。

v_SqlStr varchar(200)

     := 'create table emp_tmp as select * from emp;' です。

開始

即座に v_SqlStr を実行します。

を終了します。