2016-07-27 14 views
0

Linuxで実行されているSybaseデータベースでクエリを実行するWindowsバッチファイルを作成します。Sybaseデータベースでクエリを実行中にIsqlコマンドエラーが発生しました

バッチファイル:

plink.exe -ssh [email protected]<IP> -pw <PW> -m C:\scripts\script1.bat -t > C:\scripts\testing.log 

script1.bat:それはisqlコマンドまで正常に動作して

echo --- query 1 ----- 
cd /sybase/OCS-15_0/bin/ 
isql -Uimaldb_bkp -Pstart_bkp -SLinux1 -Dimaldb 
sp_helpsegment 
go 
exit 

はtesting.logで出力が得られます。

---クエリ1 - --- bash:isql:コマンドが見つかりませんbash:sp_helpsegment:コマンドが見つかりませんbash:go:コマンドが見つかりません

ご相談ください。

答えて

1

Sybase ASEに必要な環境変数がデータベースサーバ(あなたが述べたようにLinuxサーバ)に設定されると、 'isql'は動作します。詳細については、以下のリンクをご確認ください:シンプルなノートで

http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.infocenter.dc35823.1570/html/uconfig/X30690.htm

を、「SYBASE.sh」内部「/ SYBASE」という名前のファイルがあるはずです(私は、Sybaseがこのディレクトリにインストールされていると思いますあなたのサンプルコード)。このファイルは、Linuxサーバーに接続するために使用しているユーザーのホームディレクトリ内にある '.bashrc'ファイルを編集することによって、ソースから取得する必要があります。

sqlを動作させるには、スクリプト内のsqlブロックの開始と終了を示すフラグが必要です。次のことを試してください:

isql -Uimaldb_bkp -Pstart_bkp -SLinux1 -Dimaldb <<EOF 
sp_helpsegment 
go 
EOF 

あなたが代わりに「EOF」

+0

こんにちはsumitkdの他の単語を使用することができます - 私のスクリプトに私はISQLが存在する作業ディレクトリからコマンドを与えています。..お返事に感謝を。 (cd/sybase/OCS-15_0/bin /)..環境変数を設定する必要があっても –

+0

はい。それは必須です。私はそれがどのように機能するのかよく分かりませんが、私の経験から、isqlも環境変数を適切に使う必要があると思います。 – sumitkd

+0

こんにちはsumitkd - あなたの返信のおかげで - バッチスクリプトで環境変数を与えた後、今は何のエラーも出していませんが、依然としてクエリを実行できません。 ----- - 環境変数done --- 1> –

関連する問題