The UNIX and Linux Forums  
Helloやアメリカ合衆国へようこそ! UNIXおよびLinuxフォーラム!訪問し、当社のグローバルコミュニティに参加いただきありがとうございます。

Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > UNIXの詳細&エキスパートのためのユーザー
Googleのunix.com



UNIXの詳細&エキスパートのためのユーザー 専門家への専門家。先進のUNIXは、 UNIXのコマンドは、 Linux 、オペレーティングシステム、システム管理、プログラミング、シェル、シェルスクリプトは、 Solarisのは、 Linux 、 HP - UXのは、 AIXので、 OS X 、 BSDのこちらをご覧ください。

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
連続して複数のbashスクリプトを実行する ファンタジー シェルプログラミングとスクリプティング 7 2009年5月16日 07:54午後
指定されたが、 bashのKshで実行 akhilnagpal UNIXのダミー質問と回答のため 7 2009年2月4日 11:45午前
シェルスクリプトからMySQL負荷ステートメントを実行する DILEEP410 シェルプログラミングとスクリプティング 4 2009年1月22日 03:18午前
UNIXのスクリプトでは、 OracleのSQLステートメントを実行する ganga.dharan シェルプログラミングとスクリプティング 1 2008年12月8日 10:44午前
Unix上のOrcale 8iをインストールする Parameswaran.AR UNIXのダミー質問と回答のため 1 2006年3月15日 11:57午前

Reply
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 スレッドを評価 表示モード
  #1固定リンク)  
Old 2009年6月25日
satnamx satnamx is offline
登録ユーザー
  
 

参加日: 2006年3月
投稿: 34
bashのステートメントを実行するOrcale更新

こんにちはすべて、

Solarisのボックスを使用する
はbash - 3.00 $ $ BASH_VERSIONエコー
3.00.16 ( 1 )リリース


私は、基本的にイムは、 bashの機能" dbase_sqlを実行するbashスクリプトを実行する"バグがあるのは本当に残念なこと。 bashの関数はOracleのUPDATEステートメントは、例の形で、パラメータを受け入れる



dbase_sql "更新dte_batch_details
設定row_count \u003d ' $ row_count '
、 checksum_value \u003d ' $ checksum_value '
、 \u003d NVL ( 、 0 ) +1 load_attempts load_attempts
、 pre_stage_errors \u003d ' $ pre_stage_errors '
、メッセージ\u003d ' $ sql_err_msg '
どこobject_name \u003d ' $ source_tabin_name ' "





この関数自体は以下のようです

dbase_sql ( )


"エコーdbase_sql ( ) 1.1 "
ローカルのSQL \u003d " $ 1 "
" \u003d " $のSQLのSQLエコー
" ECHOはエコーを示して! "
sqlplus - DBUSER $ / $ $ dbnameにDBPASS @ < < EOFを

サイズを1000000に設定serveroutput
オフかどうかを確認する
フィードバックをオフに設定

可変vi_err番号

宣言

開始する
$ (のSQL ) ;
コミット;
: vi_err : \u003d 0 ;

例外
が、他
それから
: vi_err : \u003d 1 ;
終了;
/
終了: vi_err
EOFを




を当惑させることは、私が機能するために私のメインのシェルスクリプトの中で仕事をするために電話を受けることができないので、私は、関数呼び出しは、簡単なスクリプトを作成し、そのような仕事です!いくつかの理由は、バグは、エコーと、それゆえに失敗して、これを呼び出すように不正な形式の文は、 Oracleの関数の完全なパスステートメントを表示していません。

シェルからのエラーは次のとおりです:

dbase_sql ( ) 1.1
' 、 \u003d NVL ( 、 0 ) +1 、 load_attempts load_attempts \u003d ' Y 'について、メッセージ\u003d ' / #のSQLローダバートファイル[ / export/home/ORACLE/product/10.2.0/TORPEDO/LOGS/SQLLDR_bad_TOS_TABIN218.bad ] pre_stage_errors 'ここでobject_name \u003d ' TOS_TABIN218 '
エコーを見せた!
木曜日、 #アプリケーションエラー-中止: 2009年6月25日午後02時06分43秒BST dbase_func.dbase_sqlに請求( )


作業バージョンが表示さ:

dbase_sql ( ) 1.1
のSQL \u003dを更新すると、 \u003d NVL ( 、 0 ) +1 、 load_attempts load_attempts pre_stage_errors \u003d ' Y 'について、メッセージ\u003d 'なし/ #のSQLローダバートファイルrow_count \u003d '1 ' 、 checksum_value \u003d '1 'を設定dte_batch_details [ ] / #のSQLローダ不良ファイル[ ] / #のSQLローダバートファイル[ ] / #のSQLローダバートファイル[ ] / #のSQLローダバートファイル[ ] / #のSQLローダバートファイル[ ] / #のSQLローダバートファイル[ ] / #のSQLローダバートファイル[ ] 'がobject_name \u003d ' TOS_TABIN218 '
エコーを見せた!


任意のアイデアですか!
かしこ
Satnam
  #2固定リンク)  
Old 2009年7月6日
zaxxon's Avatar
zaxxon zaxxon is online now Forum Staff  
モデレータ
  
 

参加日: 2007年9月
場所:ドイツ
投稿数: 2281
そこには、エコーの構文の間に違いを長くして取り組んで短いスクリプトですか?基本的におよび/または二重引用符は1つのマークに問題があるようだ。たぶんするまでは、所望の出力を得るにバックスラッシュをエスケープするのに再生してください。
もう1つの方法は、プレーンのファイルにして、ステートメントを置くかもしれないあなたのスクリプトにパラメータとして引き渡す手間が少ない。
またときには、将来的にコードを投稿するログデータやコードのタグを使用します。
Reply

ブックマーク

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは 〜の上に
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 08:06午前


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0