- PR -

SQLPLUS 改行なしファイル作成方法

1
投稿者投稿内容
tsubakuro
会議室デビュー日: 2008/06/26
投稿数: 2
投稿日時: 2008-06-26 00:55
こんにちは。

テーブルから改行コードなしのDATファイルを作成したいのですが
どうしても改行コードを削除(無効)できません。

-----ここから-----

SET ECHO OFF
SET FEEDBACK OFF
SET HEADING OFF
SET PAGESIZE 0
SET LINESIZE 9999
SET TERMOUT OFF
SET TRIMSPOOL ON

SPOOL FILE.dat

SELECT
col1||
col2||
col3||
col4
FROM
table
;

SPOOL OFF
EXIT

-----ここまで-----

上記の記述のほかになにを記述すると可能でしょうか?

申し訳ありませんが宜しくお願いいたします。

※1レコードに連結したファイルを作成したい。


[ メッセージ編集済み 編集者: tsubakuro 編集日時 2008-06-26 00:57 ]
deanna
大ベテラン
会議室デビュー日: 2004/08/23
投稿数: 118
投稿日時: 2008-06-26 08:18
SQL*Plusで改行なしはできません。
SPOOLで作成されたファイルをsedで編集(改行を削除)してください。
後、連結した結果の長さが4000バイトを超えるとエラーになるので注意してください。
この4000バイトの問題の対処は、項目ごとにto_clob(xxx)をして連結すればいいのですが、to_clobのない場合と比べるとものすごく遅くなります。
tsubakuro
会議室デビュー日: 2008/06/26
投稿数: 2
投稿日時: 2008-06-26 09:05
返信いただきありがとうございます。
カンマも削除できたので

SET COLSEP ''

後は、改行コードのみでした。
もうちょいだったんですが残念です。
無いものねだりしてもしょうがないので
他の方法で良いか顧客に判断してもらいます。

ありがとうございます。
1

スキルアップ/キャリアアップ(JOB@IT)