
あるテーブル「ABC」の定義が
CHAR(5),
VARCHAR2(10),
VARCHAR2(20),
NUMBER(5,2)
だったとします、
そこへINSERT文で
INSERT INTO ABC VALUES ('A1111', 'B222222', 'C33333333', '0')
を実行すると、
「ORA-01722: 数値が無効です。」
のエラーとなってしまいます、
形式的には合っているように思えるのですが、
どういった問題が考えられるでしょうか?
ORACLEバージョンは9.2です、
宜しくお願い致します。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
提示されているSQLとテーブルでは、暗黙の型変換が問題なく成功するはずです。
実際のテーブル定義と実際にエラーになるSQLを提示することは可能でしょうか?
カラム名や個人情報は伏字でも構いませんが。
No.2
- 回答日時:
> しかも、既に稼動していて、同じデータで今まで問題なく動いているとの事です、
その環境のバージョンもOra9.2ですか?
この回答への補足
有難う御座います、
確認したところ、問題なく動いている環境では
10.2だそうです、
型変換について、このバージョンの違いが影響するのでしょうか?
自分なりに調べたところ、特に違いがあるようには思えなかったのですが、
No.1
- 回答日時:
最後のフィールドはNUMBER型ですので、シングルクォーテーションで囲むのがよろしくないのでは?
お試しください。
有難う御座います、
実はINSERTの実行は別のアプリ経由で行っており、
こちらの一存で形式を変える事ができません、
しかも、既に稼動していて、同じデータで今まで問題なく動いているとの事です、
クォーテーション表記自体に問題は無いのではないかと思うのですが、
ORACLEの暗黙の型変換により、'0'や'1'であれば問題なく0と1に変換できるはずで、
エラー自体の意味が、この型変換ができなかった事を指すそうなので、
(例えば'A1'は数字に置き換えられない為エラーというような)
違うのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エラーを起こす方法
-
オラクルのUPDATEで複数テーブル
-
truncate tableを使って複数の...
-
複数レコードの複数フィールド...
-
ORA-01630の対応方法について
-
【SQL】他テーブルに含まれる値...
-
フラグをたてるってどういうこ...
-
既存データをINSERT文にして出...
-
JDBCを使ってdate型へのINSERT...
-
PostgreSQLのtimestamp型で時間...
-
sqlに記述できない文字
-
DB2のSQLコマンドについて
-
SELECT INTOで一度に複数の変数...
-
テキストボックスの背景をVB...
-
Using temporary; Using fileso...
-
Accessで最新のレコード...
-
在庫管理のデータベース
-
T-SQLで任意の箇所で強制終了す...
-
ACCESS VBAでSeekメソッドの処...
-
テーブル名が可変の場合のクエ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エラーを起こす方法
-
truncate tableを使って複数の...
-
オラクルのUPDATEで複数テーブル
-
既にテーブルが存在する場合の...
-
データ削除とSQL*Loaderでのイ...
-
accessのデータをoracleへinser...
-
テーブル定義書(Oracle) 【IX】...
-
複数レコードの複数フィールド...
-
AccessからOracle DB(View)を...
-
CASEでBETWEEN制約
-
任意のテーブルをdrop tableしたい
-
Oracle[10g]のSQL文について。(...
-
テーブルに変更があったらCSV出力
-
Oracleによるリンクテーブルで...
-
Where句のNot条件をAnd条件にし...
-
oracle ora-02298
-
ora-01722のエラーについて
-
複数テーブルにある個別フィー...
-
Oracle[10g]のSQL文について(新...
-
テーブルDROPできないのです。。。
おすすめ情報