Chapter 38. Large Objects

Table of Contents

38.1. Introduction
38.2. Implementation Features
38.3. Client Interfaces
38.3.1. Creating a Large Object
38.3.2. Importing a Large Object
38.3.3. Exporting a Large Object
38.3.4. Opening an Existing Large Object
38.3.5. Writing Data to a Large Object
38.3.6. Reading Data from a Large Object
38.3.7. Seeking in a Large Object
38.3.8. Obtaining the Seek Position of a Large Object
38.3.9. Truncating a Large Object
38.3.10. Closing a Large Object Descriptor
38.3.11. Removing a Large Object
38.4. Server-Side Functions
38.5. Example Program

Postgres Pro has a large object facility, which provides stream-style access to user data that is stored in a special large-object structure. Streaming access is useful when working with data values that are too large to manipulate conveniently as a whole.

This chapter describes the implementation and the programming and query language interfaces to Postgres Pro large object data. We use the libpq C library for the examples in this chapter, but most programming interfaces native to Postgres Pro support equivalent functionality. Other interfaces might use the large object interface internally to provide generic support for large values. This is not described here.