3

delete storedprocedure を実行すると、「ORA-01013: ユーザーが現在の操作のキャンセルを要求しました」というメッセージが表示されます。

また、アプリケーションから例外をスローするのに時間がかかります (約 10 秒以上)。

Toad でこのクエリを実行すると、30 秒以上かかります。キャンセルすると、出力ウィンドウに上記のエラーが表示されます。

データアクセスブログはタイムアウトすると自動的にキャンセルされると思います。

なぜ30秒かかるのか不思議です。また、選択クエリを単独で実行すると、レコードがありません。

削除のみを呼び出すと、時間がかかります。

DELETE FROM ( SELECT *
       FROM VoyageVesselBunkers a
       JOIN VoyageVessel b
       ON  a.VoyageVesselId = b.Id
       WHERE a.Id    = NVL(null,a.Id)
       AND  b.VoyageId   = NVL('5dd6a8fbb69d4969b27d01e6c6245094',b.VoyageId)
       AND  a.VoyageVesselId = NVL(null,a.VoyageVesselId) );

なにか提案を。アナンド

4

3 に答える 3

3

あなたのコードはタイムアウトを設定しています ( storedProcCommand.CommandTimeout)。このエラーは、ストアド プロシージャの呼び出しが、許可されたタイムアウトよりも長くかかっているため、取り消されたことを示しています。タイムアウトを増やす (または削除する) か、プロシージャ コールが許可されたタイムアウトを超える原因となっているパフォーマンスの問題に対処する必要があります。

于 2012-08-23T06:18:06.740 に答える
-3

ORA-01013 ユーザーが現在の操作のキャンセルを要求しました

原因: ユーザーが、CTRL-C、Control-C、または別の
キャンセル操作を入力して、Oracle 操作を中断しました。これにより、現在の操作が強制的に終了されます。これは
単なる通知メッセージです。

処置: 次の操作を続行してください。

于 2012-08-23T06:24:20.543 に答える