Re: パイプでDB2のコネクションの引渡し!?
渡辺@昔DB2使い です。
"hanajipon" <hanajipon@mail.goo.ne.jp> wrote in message news:c9hpd2$qfg$1@nn-os102.ocn.ad.jp...
> function xx2 { ~/sqllib/bin/db2 "$*" | /usr/local/bin/nkf204 -e ; }
> として使うとうまく行きました。
> しかし、この出力をパイプに渡して使うと
> SQL1024N データベース接続が存在しません。 SQLSTATE=08003
> と出てしまうのです。
> function を使わずに db2 "..." | nkf | more などとすると出来るのです。
>
> これを解決するにはどうしたら良いでしょうか?
現シェル内でデータベース接続が存在するけれど、新しいサブシェルで実行
されるときにはデータベース接続が存在しないからではないでしょうか。
データベース接続そのものを共有する方法は無いように思います。
サブシェル内で実行させる時には、面倒でも明示的に connect するか、
DB2DBDFT を定義してみてはいかがでしょう。この環境変数を定義しておけば
データベース接続が存在しないときには自動で connect してくれます。
#単なる逃げとも言う。
--
---
渡辺浩和@ 府中
<wnabe@par.odn.ne.jp>
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735