- - PR -
抽出した値をシェル変数に格納する方法は・・・
投票結果総投票数:15 | |||
---|---|---|---|
あるぞよ | 13票 | 86.67% | |
ないっちゅーねん | 2票 | 13.33% | |
|
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-12-28 13:19
いつもお世話になります。DB2、Kシェルです。
見出しのとおりなのですが、SELECTした値をシェル変数 に格納できないかと思っています。参考文献が少ないので できないっぽいとは思ってるのですが、確信が持てない ので質問させていただいております。 抽出した値をファイルに落としてそのデータを読み込む のではなく、SELECTした値をシェル変数に格納する方法 はあるのでしょうか?今回は投票形式にしたいと思います。 ある OR ない でご投票ください。 また、ある場合はご教示いただけると幸いです。 よろしくお願いします。 | ||||
|
投稿日時: 2005-12-28 13:48
書き忘れてましたが、シェルはKシェルのみです。
他のシェルで可能であればその辺も参考にしたい と思いますのでご教示いただきたいです。 [ メッセージ編集済み 編集者: take 編集日時 2005-12-28 13:49 ] | ||||
|
投稿日時: 2005-12-28 16:19
「ある」のほうが先行してるのは以外でした。
結構裏技的な方法なんでしょうか? オラクルやpostgreSQLだとできるみたいですけど DB2ではなかなか方法を見つけられないです。 | ||||
|
投稿日時: 2005-12-28 17:46
結果をExportしてしまえば後はどうとでもならないでしょうか。
| ||||
|
投稿日時: 2005-12-28 18:34
Anthyhimさんご返答ありがとうございます。
やっぱり一度ファイルに結果を書き込む必要がありますよね。 それでもできるんですが、直接変数に格納できるとファイルから 読み込む処理が減るので効率がいいかなと思ってるのと、 ループで処理するのでファイルが壊れたりしないかっていうのも 心配しています。変数を初期化して値を代入するのと、ファイルに 一度書き出して変数にわたすのは処理的に一緒なのですが、DB2で直接 シェル変数に格納する方法を探しています。 もしかしてexportで変数に渡せるとか・・・じゃないですよねー・・・。 | ||||
|
投稿日時: 2005-12-28 18:51
もちっと前提条件を「具体的」に書いてあげた方がいいのではないでしょうか? いまのままでは延々とボタンの掛け違い話をするはめになりそうですが。 # もしくは、「take さんの望む具体例」が提示されるまで、かな。 | ||||
|
投稿日時: 2005-12-28 19:49
うーん、具体例で思いつくのといえば、たとえばJAVAなんかでデータベース から読み込んだレコードセットをループで1行ずつEOFまで評価しながら処理させる みたいな事をシェルでできないかなーと思ってる・・・という感じでしょうか。 本当はストアドプロシージャか他の言語を使えば簡単にできることなのですが、 なかなかそうもいかない状況でやきもきしてるところです。皆様にも わかりにくい質問をしてご迷惑をおかけしております。 for (条件){ 結果格納変数=SQL実行関数("select * from test where 条件") if(結果格納変数.カラム1=3){ その処理 }else{ その他の処理 } } 具体例になってないですが・・・。イメージだけでも。 シェルとDB2以外は使わない方向なので、サードパーティ 製品をインストールできない状況です。DB2のストアドプロシージャ はCコンパイラが必要なので使えない状況です。 | ||||
|
投稿日時: 2005-12-28 21:20
DB2の場合はそうしたスクリプト処理はperlとDBIでやるほかないですね。
|