The direct I/O functions perform input or output directly on the OCI handle, without the intervening layer of a stream. If you move large amounts of data to or from the LOB, and in particular if you pass the data to or from foreign functions, the direct calls can be more efficient, and in some cases also more convenient to use. Note, however, that if you make many small modifications to the data, the
interface may be more efficient.
Note also that the difference in efficiency between the direct calls and the
interface is likely to be quite small compared to the time spent on network traffic.
If you make many modifications to a LOB, you should also consider wrapping the operations in a transaction created by a pair of calls to
You can read data from the LOB locator into a Lisp buffer or foreign buffer using
can be used to write buffer to a LOB.
You can obtain a buffer suitable for efficient I/O with foreign functions via
writes the contents of a LOB into a file.
writes the contents of a file into a LOB.