GET_LINE ストアドプロシージャは、入力されたファイルハンドルと読み取り長に基づき、ファイルが最後に読み取られたオフセットから指定された長さのデータを読み取ります。改行文字に遭遇すると停止します。
機能の適用範囲
この内容はOceanBaseデータベースEnterprise Editionにのみ適用されます。OceanBaseデータベースCommunity Editionは現在サポートされていません。
構文
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です。