ここから本文です

バッチファイルでのSQLPLUSのUPDATE文の実行について

mj0********さん

2012/6/1320:09:46

バッチファイルでのSQLPLUSのUPDATE文の実行について

バッチファイルでのSQLPLUSのUPDATE文の実行について教えてください。

バッチファイルでSQLスクリプトを使用し

UPDATE テーブル名 SET nichizi=sysdate where ID=$AAA

という処理を実行したいのですがうまく実行できません。
ORA-00911: 文字が無効ですというエラーが出ます。
変数AAAにはこの処理の前でSELECT文で取得した値が代入されています。
変数AAAの部分を1や2という具体的な数に設定すると正常に処理が行われます。
この処理に入る前に変数AAAの値を確認してみましたが正常な値でした。

どうすればこのSQL文が正しく実行されるかがわかりません。
もし分かる方がいらっしゃいましたら教えてください。
よろしくお願いします。

閲覧数:
4,271
回答数:
2
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

nob********さん

2012/6/1410:23:36

(1)o.sql
UPDATE テーブル名 SET nichizi=sysdate where ID=&1;
quit
(2)o.bat
sqlplus ユーザー名/パスワード@接続文字列 @o.sql "AAAの値"
-----------------------------
でどうでしょうか。

質問した人からのコメント

2012/6/14 12:33:06

実行できました。
ありがとうございます。

ベストアンサー以外の回答

1〜1件/1件中

プロフィール画像

カテゴリマスター

nor********さん

2012/6/1400:31:38

SQLの全容がわからないので確信はありませんが、無名PL/SQLプロシージャを記述したファイルを作成して実行してみてはどうでしょう。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる