3

以下を含むスクリプトがあります。

db2 connect to user01
db2 describe indexes for table table_desc

私が理解しているのは、最初の行を実行するプロセスと 2 番目の行を実行するプロセスが異なるということです。これは、最初の行を実行するプロセスが接続を取得する一方で、2 番目の行を実行する 2 番目のプロセスにはまったく接続がないことを意味します。2 行目にデータベース接続が存在しないというエラーが表示されるため、これは検証済みです。

同じプロセスで両方のコマンドを実行することは可能ですか? または、少なくとも最初のプロセスを 2 番目のプロセスに「結合」する方法はありますか?

4

1 に答える 1

7

両方の命令を同じプロセスで実行する場合は、それらをスクリプトに記述する必要があります。

$ cat foo.db2
connect to user01
describe indexes for table table_desc

db2インタープリターでそのスクリプトを実行します。

db2 -f foo.db2

ヒア ドキュメントも同様に機能する可能性があります。

db2 <<EOF
connect to user01
describe indexes for table table_desc
EOF

ただし、現在手元に Linux 上の DB2 がないため、それをテストすることはできません。

于 2013-06-19T15:28:04.967 に答える