Глава 32. libpq — библиотека для языка C

Содержание

32.1. Функции управления подключением к базе данных
32.1.1. Строки параметров подключения
32.1.2. Ключевые слова-параметры
32.2. Функции, описывающие текущее состояние подключения
32.3. Функции для исполнения команд
32.3.1. Главные функции
32.3.2. Извлечение информации, связанной с результатом запроса
32.3.3. Получение другой информации о результате
32.3.4. Экранирование строковых значений для включения в SQL-команды
32.4. Асинхронная обработка команд
32.5. Конвейерный режим
32.5.1. Использование конвейерного режима
32.5.2. Функции, связанные с конвейерным режимом
32.5.3. Когда использовать конвейерный режим
32.6. Извлечение порциями информации, связанной с результатом запроса
32.7. Отмена запросов в процессе выполнения
32.7.1. Функции для отправки запросов отмены
32.7.2. Устаревшие функции для отправки запросов отмены
32.8. Интерфейс быстрого пути
32.9. Асинхронное уведомление
32.10. Функции, связанные с командой COPY
32.10.1. Функции для передачи данных COPY
32.10.2. Функции для приёма данных COPY
32.10.3. Устаревшие функции для COPY
32.11. Функции управления
32.12. Функции разного назначения
32.13. Обработка замечаний
32.14. Система событий
32.14.1. Типы событий
32.14.2. Процедура обработки событий
32.14.3. Функции поддержки событий
32.14.4. Пример обработки событий
32.15. Переменные окружения
32.16. Файл паролей
32.17. Файл соединений служб
32.18. Получение параметров соединения через LDAP
32.19. Поддержка SSL
32.19.1. Проверка сертификатов сервера на стороне клиента
32.19.2. Клиентские сертификаты
32.19.3. Защита, обеспечиваемая в различных режимах
32.19.4. Файлы, используемые клиентом SSL
32.19.5. Инициализация библиотеки SSL
32.20. Поведение в многопоточных программах
32.21. Сборка программ с libpq
32.22. Примеры программ

libpq — это интерфейс PostgreSQL для программирования приложений на языке C. Библиотека libpq содержит набор функций, используя которые клиентские программы могут передавать запросы серверу PostgreSQL и принимать результаты этих запросов.

libpq также является базовым механизмом для нескольких других прикладных интерфейсов PostgreSQL, включая те, что написаны для C++, Perl, Python, Tcl и ECPG. Поэтому некоторые аспекты поведения libpq будут важны для вас, если вы используете один из этих пакетов. В частности, Раздел 32.15, Раздел 32.16 и Раздел 32.19 описывают поведение, видимое пользователю любого приложения, использующего libpq.

В конце этой главы приведены короткие программы (Раздел 32.22), показывающие, как использовать libpq в своих программах. В каталоге src/test/examples дистрибутивного комплекта исходных текстов приведено несколько завершённых примеров приложений libpq.

Клиентские программы, которые используют libpq, должны включать заголовочный файл libpq-fe.h и должны компоноваться с библиотекой libpq.