[ORACLE]ORA-24344:正常に終了しましたが、コンパイル・エラーがあります。

投稿日:

全然、正常に終われてねぇんじゃん??
って思った。

ビューの作成時に発生。

ネットで検索するも、明確な回答は見当たらず・・・

ただ、エラーには違いないので、ビューが正しく作成されていないことになる。

原因は、


CREATE OR REPLACE FORCE VIEW ("SEQ","MANAGE_NO".....) AS
  SELECT
    SEQ AS SEQ
    ,CASt(MANAGE_NO AS NUMBER(2)) MANAGE_NO
    :
    :
  FROM(
       SELECT
          SEQ
          ,NVL(MANAGE_NO, '')
       FROM
         :
       )

って感じで「NVL」を使ってしまったのが原因でした。

NUMBERへキャストかけてるのにも関わらず「”」で空文字を充てようとしてたので・・・

確かに、元のSQLはデフォルト値として数値だったんだけど、NULLにしろというか、実行時には殻文字でパッと見は見えないようにしろっていうお達しがあり、対応中に発生w

すぐに気づける内容だったからよかった。

ただ、これが客先にリリースされた後だったら、多分、帰れなくなるパターン・・・







-ORACLE, 開発メモ

関連記事

[C#]文字を繰り返したものを取得したい。

いちいちfor文とかで繰り返すのも効率が悪いなと思ってたので、処理を関数化・・・ ただ、共通関数として登録しないので、別のところで使いたい場合は、同じ関数が複数登録されちゃうことに・・・ 更には、思い …

SQL文中で全角文字を使うなと言われたので、ORACLEでJOIN句の条件式をCASE文で分岐させる

JOINの条件式にCase文を入れる http://blog.goo.ne.jp/ilikehobby/e/80b471f96f6d693b6c5df75f18591c0e SQL文中で全角文字を使う …

[ORACLE]IMPコマンドで、複数テーブルをインポートする

OracleでIMPコマンドでdumpファイルをインポートする時に、特定のテーブルだけインポートしたい時ってある。 後は、複数のテーブルを纏めてインポートする方法を説明します。 Oracleを使ってる …

続) 何度だって引っかかるORACLEのエラー・・・。ORA-01008:バインドされていない変数があります。

この土日は休日出勤でした・・・ そして、昨日・・・新しい現象が発生しました。 日本の中心付近で仕様変更と闘うSE日記日本の中心付近で仕様変更と闘うSE日記http://ht-jp.net/blog/p …

ORACLEでDELETEとTRUNCATEのどちらを使うか。

未だに迷う。 例えば、テーブル全件削除をしたいときは delete * from tableA; delete文なら、こうだし。 truncate tableA; truncate文なら、こう。


カテゴリー