dポイントプレゼントキャンペーン実施中!

先日SQL-LOADERについて質問させてもらいましたが、もう1つ教えて欲しいことがあります。

SQL-LOADERの逆のものはないのでしょうか?

200万件のテーブルのデータを、条件毎に高速エクスポート(固定長テキスト)したいのですが。

つまりSQL-WRITERというものは無いかな~、、、と、、、(笑)

最悪、PL/SQLで200万件をまわして、テキスト出力させようと思っていますが、多分時間が相当かかると思うので、、、、
なにか良い方法があったら教えてください。

A 回答 (5件)

件数が多い場合、この辺の製品なんかどうでしょうか?



#私は購入したこと無いですがトライアル版でも使用してみては
#いかがでしょうか?
http://www.ashisuto.co.jp/prod/fuo/sum/index.html

この回答への補足

これはすばらしいですね!!!
どうしてもダメそうだったら、この製品の購入も考えようと思います。
まずはトライアル版でテストしてみます。

ありがとうございました。

補足日時:2007/01/26 19:13
    • good
    • 0

以前、PERL+DBD-ORACLEの環境で自作しましたが、そんなに遅くなかったですよ。


アプリケーションとしては、為すべき事が少ないので、処理に要する時間は、
オラクルエンジン上の処理時間に左右されます。
レコード長次第ですが、サーバ上で動かすなら、数分で終わるように思いますけどね。
    • good
    • 0
この回答へのお礼

サーバ上で動かすと、数分で終わるのですか?
250バイトのレコード長なんですが、、、、
数分で終わるようだったら、すごくうれしいです。

ありがとうございました。

お礼日時:2007/01/26 19:21

私も通常はsqlplusでやってます。


内容かぶりますが、
no1さんのリンク先で少し迷ったので、一応書いておきます(^^;

sqlldrで下のようなsetの後、spoolしつつ、select文を実行します。

set colsep ','
set pagesize 0
set trimspool on
set linesize 4096

colsepはカンマ区切りの例ですが、
タブの方がデータ中に含まれにくいので、タブ区切りの方が安心かも知れません。
linesizeの値も例です。充分大きな長さを指定します。
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます。
spoolって初めてなので、とても助かります。

1行が250バイトの200万件データ(500M)なんですが、spoolでどの程度の時間がかかるかやってみようと思います。
ありがとうございました。

お礼日時:2007/01/26 19:12
    • good
    • 0

SQL*WriterみたいなものはExportユーティリティしかないですね^^;



私なら、ExcelかAccess、VisualBasicを使ってプログラムを組みます。

でも、たしか↓のページで、SQL*Plusだけで固定長テキストでSELECTの結果を出力するというTipsが載っていたと記憶しています。
http://www.tmpgenc.net/ja/j_main.html
http://www.mars.dti.ne.jp/~o-shin/new/kowaza/
探してみてください(汗;

Oracleのマニュアルはありませんか?暇な時に目を通しておくとかなり勉強になりますよ。
また、OracleのサイトからPDF形式でマニュアルがダウンロードできるはずです。印刷するととんでもない量になりますが、マニュアルはどんな形式であれ手元においておくことをお奨めします。
    • good
    • 0
この回答へのお礼

なるほど、、、、
これは役にたちそうなサイトですね。

ORACLEのマニュアルは、入手しようと思います。
ありがとうございました。

お礼日時:2007/01/26 19:08

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す