
いつもありがとうございます。
早速ですが、ローカルのACCESSに外部テーブルとしてODBCで
Oracleのテーブルをリンクしています。
-------------------------------------------------
#Access: 売上実績.mdb
#リンクテーブル: テーブルA
#更新対象: テーブルA.数量(テキスト型)
-------------------------------------------------
当環境に、ACCESS側に更新クエリとしてリンクテーブル上の1フィールドを
アップデートしたくSQLを発行したのですが、以下のエラーが発生し
思うような挙動となりません。
(識別キーが「1」の場合、数量を「100」に更新)
■実行SQL
UPDATE テーブルA SET 数量="100" where 識別キー="1"
■エラー内容
---------------------------------------------------------------
ODBC--リンクテーブル'テーブルA’での更新に失敗しました。
[Oracle][ODBC][Ora]ORA-01722: 数値が無効です。
---------------------------------------------------------------
エラー内容から、更新するフィールドが「テキスト型」であることが
原因の一つかとも考えているのですが、正直当方まったく知識を持ちあわせておらず
行き詰っております。
試しに、一度リンクテーブルをローカルDBとして出力して実行すると
正常にデータが更新されるため、Oracleとの接続が原因であるとも推察しております。
少ない情報となり恐れ入りますが、何か確認ポイントなどご支援頂けますと幸いです。
以上です。
No.3ベストアンサー
- 回答日時:
メインキーを設定してみる(もしくは、リンクテーブルを作り直して主キーを指定する)と何か変わりますか?
ShowMeHow 様
返信が遅くなってしまい、申し訳ございませんでした。
アドバイス頂いたとおり試してみたのですが、同様のエラーが発生し解決に至りませんでした。
ただし、リンクテーブルのデータをアップデートせず、一時テーブルを経由してアップデート後に
目的のテーブルにINSERTすることはできたので、当初の想定とは異なりますが、目的は果たすことができました。
今回は、いろいろと迅速にアドバイス頂きましてありがとうございました。
今後も機会が御座いましたらご支援頂けますと幸いです。
以上です。
No.2
- 回答日時:
ごめんなさい、もう一つ、
識別キーは、アクセス上で主キーになっていますか?
ShowMeHow様
返信が遅くなり申し訳ございません。
>識別キーは、アクセス上で主キーになっていますか?
→ 「識別キー」はNULL許可(NULLはない)の任意となっております。
以上です。
No.1
- 回答日時:
select * from テーブルA where 識別キー="1"
のような選択クエリは実行できますか?
オラクル上では「数量」のデータ型は何ですか?
直接oo4o等でオラクルに接続はできないのですか?
>ShowMeHow様
早速のご返信ありがとうございます。
ご回答頂いた内容について返信させていただきます。
>select * from テーブルA where 識別キー="1"
>のような選択クエリは実行できますか?
→ はい、SELECT文であれば正常に出力されており、条件指定する値(0始まりの数字)も
問題ないようです。
実際、対象テーブルの該当件数も一致しており、その抽出件数に対してUPDATEする場合に
限り、エラーが発生する事象です。。
>オラクル上では「数量」のデータ型は何ですか?
→ 「テキスト型」となります。
UPDATEする条件となるフィールドも同様に「テキスト型」となります。
#例: UPDATE テーブルA SET 数量="100" where 識別キー="001"
>直接oo4o等でオラクルに接続はできないのですか?
→ お恥ずかし話、当方あまりデータベースに詳しくなく、、切り分け自体難航しているのが
正直なところで、既存の環境(ODBCが通っている端末で、ACCESSにてリンク)が
唯一の接続手段という状況です。。
以上、どうぞ宜しくお願い申し上げます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ページが重いから?表示スピー...
-
AccessVBAで任意の複数リンクテ...
-
ACCESSユニオンクエリから新テ...
-
ユニオンクエリをデザインビュ...
-
access vbaにてテンポラリーテ...
-
アクセスで追加した項目に全て...
-
Accessを開きなおすとテキスト...
-
accessでの文字列の混ざった連...
-
エクセルにおける「フィールド...
-
Excleピボットでデータのない部...
-
ACCESSで条件によってフォーム...
-
Accessのクエリで累計の出し方
-
Accessで在庫管理する時の在庫...
-
ACCESSで在庫管理 備考欄の組...
-
ACCESS 「パラメータの入力」...
-
クエリの結果が文字化け(Access...
-
Accessのクロス集計から構成比...
-
Accessのテーブルのフィールド...
-
Access「レコードが削除されま...
-
Accessクエリで分類ごとの累計...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
2つのテーブルに共通するレコ...
-
ACCESSユニオンクエリから新テ...
-
テーブルに表示されているもの...
-
Accessのテーブルで、リンク?...
-
access vbaにてテンポラリーテ...
-
Acccessで2つのテーブルから1...
-
Accessのリンクされたテーブル...
-
最新日のデータのみ抽出するク...
-
access2000・・テーブルをデー...
-
ACCESS テーブルを見比...
-
accessのテーブルを閉じたとき...
-
Accessでリストの並び順を変更...
-
クエリで同一テーブルの複数回...
-
ACCESSでテーブルをコピーしよ...
-
外部MDBのリンクテーブルの...
-
アクセス2000でのリンク先...
-
アクセス 部分一致の抽出
-
アクセス2016 チェックボックス...
-
ACCESSのODBCリンクテーブルの...
-
ACCESS テーブルを見比...
おすすめ情報