2017-11-01 5 views
0

私は以下のコードを実行しているときにエラーが発生しています。シーケンスは値を生成していません

declare 
x int ; 
begin 
x:=APP_COMP_DETAIL_STG_ID_SEQ.nextval; 
dbms_output.put_line('values is '||x); 
end; 
/

エラーレポート - ORA-01403:データが ORA-06512見つかりませんでした。ライン4 01403. 00000で - *原因を "データが見つかりません":データはありませんが、オブジェクトは見つかりませんでした。 *処置:フェッチの終了による可能性のあるオブジェクトからのデータはありませんでした。

実際には、シーケンスは値を生成しません。それは有効であり、最大値に達していません。私は本当にどこに問題があるかわからない。 私はselect APP_COMP_DETAIL_STG_ID_SEQ.nextval from dual;を実行しているときに出力が得られません。これは生産上の問題です。あなたは早く解決してください。

答えて

0

シーケンスに問題はありません。問題はデュアルテーブルにあります。実際に誰かが私たちのローカル環境でデュアルテーブルを作成しました。 sys.dualという同義語を指す代わりに、ローカルテーブルを指していました。そのテーブルを削除した後、私たちの問題は解決されました。 sys.dualも使用できますが、それは良い方法ではありません。

関連する問題