Oracleストアド・プロシージャから7MBを超える大きなファイルを作成していますが、各レコードの最後に行終了文字(改行なし/改行なし)が必要です。Oracle PL/SQL UTL_FILE.PUTバッファリング
UTL_FILE.PUTを使用してストアドプロシージャを作成しましたが、UTL_FILE.PUTへの呼び出しごとにUTL_FILE.FFLUSHを呼び出しています。 FFLUSH呼び出しを行っていますが、バッファサイズ(最大32767に設定されています)を超えて記述した時点で、このプロシージャは書き込みエラーでエラーになります。 PUT呼び出しをPUT_LINE呼び出しで置き換えると、プロシージャは正常に動作します。
改行文字なしでバッファサイズ以上を書き込むことはできませんか?もしそうなら、回避策はありますか?
FFLUSHの仕組みを明確にしてくれてありがとうございました。私は検索で最後の文を見たことがありませんでした。 – Dustin
こんにちは@Ollie、私はまだFFLUSHの仕組みについて、(1 - > 32767 + n)、私が置くたびに混乱しています。なぜ新しい行が必要なのでしょうか?説明するのを助けてくれますか? – Jaskey