[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, 開発メモ

関連記事

TortiseSVNなんだけど、自分が原因で「already locked」が出てしまった時の対処法。自分がロックを取ってて、ロックが取れずコミットが出来ない事態に遭遇した・・・

SVNを使っていると、たまにありますね。 ロックが既に誰かに取得されていて、コミットしようとした時に、唖然とするやつ。 ただ、今回は状況が違いました。 いつもなら、「ロック取ってるやつ誰だよ~」って感 …

VisualStudioでデータテーブルの中身確認できるの便利すぎワロタw

DataSetビジュアライザーで、DataTableの中身が確認できるのが便利すぎたのでメモ。 データテーブルって気軽に使えるけど、中身の確認がしち面倒くさい件 本当のところはどうなのか?ってのは知ら …

Oracleで複数レコードを更新する方法

UPDATE文で、複数のレコードを一回のトランザクション内で更新する必要に迫られました。 基本的に、今まで使ってきたUPDATE文では、 UPDATE tableA set COL1 = 1 ,COL …

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

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

Oracle11gでパスワードの有効期限を変更する

先日のOra-28001ですが、他のユーザーも同様になってましたw 当然ですね・・・ 日本の中心付近で仕様変更と闘うSE日記Oracleで「Ora-28001:the password has exp …


カテゴリー