GET_LINE ステートメントは、入力されたファイルハンドルと読み取り長に基づいて、ファイルの前回読み取ったオフセットから指定された長さのデータを読み取ります。改行文字に遭遇すると停止します。
適用対象
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity EditionはMySQLモードのみを提供しています。
構文
UTL_FILE.GET_LINE (
file IN FILE_TYPE,
buffer OUT VARCHAR2,
len IN PLS_INTEGER DEFAULT NULL);
パラメータの説明
| パラメータ | 説明 |
|---|---|
| file | ファイルを読み取るためのファイルハンドル。このファイルは少なくともrモードで開かれている必要があります。 |
| buffer | 読み取ったデータを格納するための出力パラメータ。ユーザーはこの文字列の長さが別のパラメータlenより長いことを確認する必要があります。 |
| len | 読み取るデータのバイト数。指定されない場合、システムはファイルを開いたときのパラメータmax_linesizeに従って指定します。 |
異常ケース
INVALID_FILEHANDLEINVALID_OPERATIONNO_DATA_FOUNDREAD_ERROR
使用方法
ファイルは
rモードで開く必要があります。そうでない場合、INVALID_OPERATION例外が報告されます。その行をバッファに格納できない場合、
READ_ERROR例外が発生します。ファイルの終了によりテキストが読み取れない場合、NO_DATA_FOUND例外が発生します。バイトモードでファイルを開いた場合、INVALID_OPERATION例外が発生します。行終端文字がバッファに読み込まれないため、空行を読み取ると空の文字列が返されます。
FOPENで最大バイト数が指定されていない場合、バッファのパラメータは最大32767バイトになります。デフォルト値は1024です。