ORACLE機能 エラー

[ORAエラー] ORA-42399: 読取り専用ビューではDML操作を実行できません

投稿日:

以下のように表示されます。

(日本語)
ORA-42399: 読取り専用ビューではDML操作を実行できません
(英語)
ORA-42399: cannot perform a DML operation on a read-only view

発生パターン

このエラーは以下のような場合に発生します。

  • 読み取り専用のビューに対してUPDATE等のDML操作を行った
    (読取り専用ビューは WITH READ ONLYオプション付きで作成したビューです)
エラー例
SQL> update v_test set col2 = '100' where col1 = 'AA'; update v_test set col2 = '100' where col1 = 'AA'; * 行1でエラーが発生しました。: ORA-42399: 読取り専用ビューではDML操作を実行できません

v_testは、読取り専用ビューの前提です。

対処法

  • ビューの定義を更新可能なビューに変更する。
  • VIEW経由ではなく、TABLEを直接指定してDML操作を行う。

スポンサーリンク

スポンサーリンク

-ORACLE機能, エラー

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

ORACLE

[ORACLE] シングルクォーテーションを出力する

オラクルでシングルクォーテーションを出力する方法2パターンです。 SQL文で文字列を出力するには、シングルクォーテーショ ...
ORACLE

[ORACLE関数] グループ単位で順位を飛ばさずに順位を付ける(DENSE_RANK~PARTITION BY)

検索結果をグループ単位で順位を飛ばさずに順位を付けるには、DENSE_RANK~PARTITION BY句を使用します。 ...
ORACLE

[PL/SQL] レコード(TYPE)の配列を作成する

レコード(TYPE)の配列を作成するサンプルです。 サンプル 例)TYPEの配列を作成して、内容を出力するプロシージャ ...
ORACLE

[ORACLE] データベースファイル作成時のデフォルトの場所を調べる

データベースファイル作成時のデフォルトの場所を確認するサンプルです。 サンプル 例)データベースファイル作成時のデフォル ...
ORACLE

[ORAエラー] ORA-00918: 列の定義が未確定です。

以下のように表示されます。 (日本語) ORA-00918: 列の定義が未確定です。 (英語) ORA-00918: c ...

スポンサーリンク