The LO_APPEND flag

When you open a smart large object with LO_APPEND only, the smart large object is opened as read-only. Seek operations move the file pointer but write operations to the smart large object fail and the file pointer is not moved from its position just before the write. Read operations occur from where the file pointer is positioned and then the file pointer is moved.

You can mask the LO_APPEND flag with another access mode. In any of these OR combinations, the seek operation remains unaffected. The following table shows the effect on the read and write operations that each of the OR combinations has.
OR operation Read operations Write operations
LO_RDONLY | LO_APPEND Occur at the file position and then move the file position to the end of the data that was read Fail and do not move the file position.
LO_WRONLY | LO_APPEND Fail and do not move the file position Move the file position to the end of the smart large object and then write the data; file position is at the end of the data after the write.
LO_RDWR | LO_APPEND Occur at the file position and then move the file position to the end of the data that was read Move the file position to the end of the smart large object and then write the data; file position is at the end of the data after the write.