2017-08-28 6 views
0

ストアド・プロシージャからマテリアライズド・ビューをリフレッシュしようとしましたが、プロシージャをcsharpからコールしましたが、 -12008:マテリアライズド・ビュー・リフレッシュ・パスでエラーが発生しました。ORA-01843:有効な月ではありません。別のビューで試してみましたが、これは爽快です。ストアド・プロシージャ(有効な月ではない)からマテリアライズド・ビューをリフレッシュするときにエラーが発生しました

添付画像

enter image description here

これは私のコードです:私はパラメータとどちら日付を渡していないです

、私はC#のVisual Studioから

string oradb = "Data Source=DATA; User Id=DATA; Password=DATA;"; 
      OracleConnection conn = new OracleConnection(oradb); 
      conn.Open(); 
      OracleCommand cmd = conn.CreateCommand(); 
      cmd.CommandType = System.Data.CommandType.StoredProcedure; 
      cmd.CommandText = "ACTUALIZA_VISTAS_VRE"; 
      //cmd.CommandText = "exec REFRESH_RECUPERADO"; 
      cmd.ExecuteNonQuery(); 
      conn.Close(); 
をビューを更新しようとしています
+1

どのようにDate ..を渡していますか?私たちにそれを見せてもらえますか?また、あなたのデータベースにOracleの日付の予想される形式は何ですか?あなたはmm/dd/yyyy'または 'DD-MON-YYYY'でそれを渡していますか?現在の問題や質問に関連するコードを可能な限り多く表示してください。 – MethodMan

+0

@DanyMartinez_このコードで質問をフォーマットしてくださいブロック。また、そこに日付が表示されていません。日付は正確にどこから来ていますか? – Logarr

+0

コードを編集して追加しました。 –

答えて

0

ストアド・プロシージャまたはマテリアライズド・ビューは、コードが無効な月を提供している場所です。 ACTUALIZA_VISTAS_VREはREFRESH_RECUPERADOを呼び出していますか?

+0

はい、私は問題を解決しました。ありがとう! –

関連する問題