1

いくつかの SQL クエリを含むファイルがあります。

どうにかして isql 経由でそれらを実行できますか (私は Bash スクリプトから呼び出しを行っているため、Perl DBI または JDBC にはアクセスできません)

経由で isql コマンドにパイプしようとしましecho /my/file | isql -my-other-parametersたが、うまくいきませんでした。

4

3 に答える 3

0

はい。

  • 対話モードで ISQL を実行している場合は、プロンプト:r my-filenameからコマンドを使用してファイルの内容全体をロードでき>ます。

  • Bashスクリプトからも可能ですが、慎重に確認する必要があります

    1. パイプする SQL ファイルにはgo、最後にステートメントがあります。これは、あなたが言及したような問題の非常に一般的な原因です。

    2. そのステートメントの後に改行があります。

    スクリプトから、次の 2 つの方法で実行できます。パイプ/リダイレクトを介して STDIN を渡します。または、isql の-iパラメータを介してファイル名を渡します

于 2015-01-02T04:10:37.617 に答える
0
isql -U $DB_USR -P $DB_PWD -S $DB_PATH -D $DB_NAME -w 500 < $FILE
于 2017-08-14T15:21:53.757 に答える