LoginSignup
1
1

More than 5 years have passed since last update.

アンダースコア「 _ 」で始まるオブジェクトへのSQL実行

Last updated at Posted at 2015-01-17

経緯

環境:Oracle 11g

DDLに不備があり
DB構築の際に先頭がアンダースコアから始まるトリガーが作成されてしまい(コンパイルエラーになるオブジェクト)、参照しているテーブルにデータがインサートできない事象が発生。
テストの為に一時的に無効にしようとしたが

ALTER TRIGGER トリガー名 DISABLE

SQL解析の段階で先頭にアンダースコアが含まれる為にSQL実行エラーになる。
トリガーの削除も同様にダメだった。

DROP TRIGGER トリガー名

解決策

ダブルクォーテーション " でトリガー名をかこってSQL実施

ALTER TRIGGER "トリガー名" DISABLE

TRIGGERだけでなくアンダースコアから始まる他のオブジェクトでも同じ。
解決してくれたオラクルマスター曰く、
「オブジェクト作成失敗時に _ + オブジェクト名 なオブジェクトが作成される場合がある」とかなんとか

忘れそうなのでメモ。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1