
以下のPL/SQLを実行すると、ORA-06502:数値または値のエラーとでます。途中までは、INSERTできるのですが、IF文の180個目くらいでエラーになります。そのあたりをCur1の宣言時にWhereで指定するとうまくいきます。
DECLARE
CURSOR Cur1 IS
SELECT MOJI
FROM A_TBL
;
CNT NUMBER(10);
KAKKO_FL NUMBER(1);
BEGIN
CNT := 0;
KAKKO_FL :=0;
FOR Cur_Rec1 IN Cur1 LOOP
FOR S IN 1 .. LENGTH(Cur_Rec1.MOJI) LOOP
IF(ASCII(SUBSTR(Cur_Rec1.MOJI,S,1)) = 33129) THEN /*33129は'('*/
EXECUTE IMMEDIATE ' INSERT INTO EDD.test1116
VALUES( ''' || Cur_Rec1.MOJI || ''' ) ';
END IF;
END LOOP;
END LOOP;
END;
なにがなんだか、さっぱりわからないので、どうか、ご教授ください。
No.4
- 回答日時:
ん?
'('を含む場合のみ別処理ですよね。
だったらそれが何レコード目かは「あたり」じゃなくて「特定」することは簡単ですよね。
No.3の方もおっしゃってますがトレースしてみれば早いかと。
EDDに挿入しようとしている実際の値を見ないことには解決も難しいと思います。
ためしにEDD.test1116、A_TBL.MOJIがvarchar2だったらどうなりますか?
No.1
- 回答日時:
ORA-06502: PL/SQL: 数値または値のエラー:
数値の精度が大きすぎます。が発生しました
'<MOJIの内容>' をInsertしたいのですね。
なので
SELECT MOJI FROM A_TBL のMOJIと
INSERT INTO EDD.test1116 の精度は合っていますか?
+2のサイズが必要ですよ。
この回答への補足
MOJI CHAR(9)で、test1116のMOJIは、CHAR(11)にしましたが、同じエラーがでます。
申し訳ありませんが、もう少しアドバイスをお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) VBAで最新のデータを別シートに転記する方法をお教えください。 3 2022/04/07 19:20
- Excel(エクセル) エクセルで書式設定とフィルタの組み合わせでうまく行かないのですが 4 2022/10/07 10:02
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) VBA シート上にドロップダウンリストを作り、予め指定値をセットしたいのですが 1 2023/03/25 15:15
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- Excel(エクセル) EXCEL マクロで行を挿入して貼り付けようとするとエラーになる。 2 2022/05/24 09:43
- Visual Basic(VBA) VBAの繰り返し処理について教えてください。 3 2022/08/02 13:21
- Visual Basic(VBA) 実行時エラー´5854´ 文字列型パラメーターが長すぎます。 3 2023/06/08 21:17
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
このQ&Aを見た人はこんなQ&Aも見ています
-
SELECT INTOで一度に複数の変数へ代入をするにはどのようにすれがよいでしょうか?
PostgreSQL
-
PL/SQLでログを確認したい。
Oracle
-
sqlplusの処理が途中でとまる
Oracle
-
-
4
Statement ignored というエラー
Oracle
-
5
PL/PCLでORA-06502のエラー
Oracle
-
6
PL/SQL ORA-06502エラーに関して(動的SQL)
その他(データベース)
-
7
OracleのSQL*PLUSで、データが折り返されて見づらいのですが。。。
その他(データベース)
-
8
PL/SQLでSPOOLさせたいのですが、可能でしょうか?
Oracle
-
9
PL/SQLで@ファイル名が反応しません
Oracle
-
10
【PL/SQL】SQL文が長すぎてSELECTできない
Oracle
-
11
SQL*Loaderで、データを加工してロードしたいです。
Oracle
-
12
SQLPLUSで結果を画面に表示しない
Oracle
-
13
変数が選択リストにありません
Oracle
-
14
SQLローダーCSV取込で、囲み文字がデータ中に入っている場合について
Oracle
-
15
データを削除しても表領域の使用率が減りません
Oracle
-
16
Oracle 動的SQLでエラー
Oracle
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ORA-01013のエラーについて経験...
-
CASE文のエラーについて
-
はじめまして!
-
「ORA-00907: 右カッコがありま...
-
pro*c で pl/sql に変数を渡す...
-
sqlのエラーハンドリングについ...
-
PL/SQL PLS-00103エラーについて
-
ストアドファンクションの実行
-
ビューが作成できない
-
正規表現を使用したCHECK制約
-
シェルスクリプトでオラクルの...
-
ORA-01843: 指定した月が無効で...
-
ORA-06502のエラー
-
インポート時のエラーについて
-
オラクル致命的なエラー(provi...
-
データーベースリンク
-
Oracle9 union使用時の結合制限...
-
PL/SQLのコンパイルエラーにつ...
-
ACCESSでパススルークエリにパ...
-
データベースのカラムの型がCHA...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ORA-01013のエラーについて経験...
-
PL/SQL PLS-00103エラーについて
-
CASE文のエラーについて
-
ORA-01843: 指定した月が無効で...
-
はじめまして!
-
PCC-S-02201エラーの対処を教え...
-
「ORA-00907: 右カッコがありま...
-
ORA-06502のエラー
-
シェルスクリプトでオラクルの...
-
PL/SQLによるCREATE TABLE後のI...
-
PL/SQLのコンパイルエラーにつ...
-
ACCESSでパススルークエリにパ...
-
データベースのカラムの型がCHA...
-
ビューが作成できない
-
HAVING句でのBETWEEN演算子
-
ORA-12571パケット書き込みエラ...
-
無効なSQL文の具体例を教えてく...
-
pro*c で pl/sql に変数を渡す...
-
PL/SQLでPLS-00201のエラー
-
エラーコードについて
おすすめ情報