Часть IV. Клиентские интерфейсы

В этой части документации описываются клиентские программные интерфейсы, включённые в дистрибутив Postgres Pro. Все включённые в неё главы можно читать по отдельности. Заметьте, что существует множество других программных интерфейсов, со своей документацией (некоторые наиболее популярные перечислены в Приложении H). Для изучения этой части нужно уметь работать с базой данных, используя команды SQL (см. Часть II), и, конечно же, знать язык программирования, на который ориентирован определённый интерфейс.

Содержание

31. libpq — библиотека для языка C
31.1. Функции управления подключением к базе данных
31.2. Функции, описывающие текущее состояние подключения
31.3. Функции для исполнения команд
31.4. Асинхронная обработка команд
31.5. Построчное извлечение результатов запроса
31.6. Отмена запросов в процессе выполнения
31.7. Интерфейс быстрого пути
31.8. Асинхронное уведомление
31.9. Функции, связанные с командой COPY
31.10. Функции управления
31.11. Функции разного назначения
31.12. Обработка замечаний
31.13. Система событий
31.14. Переменные окружения
31.15. Файл паролей
31.16. Файл соединений служб
31.17. Получение параметров соединения через LDAP
31.18. Поддержка SSL
31.19. Поведение в многопоточных программах
31.20. Сборка программ с libpq
31.21. Примеры программ
32. Большие объекты
32.1. Введение
32.2. Особенности реализации
32.3. Клиентские интерфейсы
32.4. Серверные функции
32.5. Пример программы
33. ECPG — встраиваемый SQL в C
33.1. Концепция
33.2. Управление подключениями к базе данных
33.3. Запуск команд SQL
33.4. Использование переменных среды
33.5. Динамический SQL
33.6. Библиотека pgtypes
33.7. Использование областей дескрипторов
33.8. Обработка ошибок
33.9. Директивы препроцессора
33.10. Компиляция программ со встраиваемым SQL
33.11. Библиотечные функции
33.12. Большие объекты
33.13. Приложения на C++
33.14. Команды встраиваемого SQL
33.15. Режим совместимости с Informix
33.16. Внутреннее устройство
34. Информационная схема
34.1. Схема
34.2. Типы данных
34.3. information_schema_catalog_name
34.4. administrable_role_authorizations
34.5. applicable_roles
34.6. attributes
34.7. character_sets
34.8. check_constraint_routine_usage
34.9. check_constraints
34.10. collations
34.11. collation_character_set_applicability
34.12. column_domain_usage
34.13. column_options
34.14. column_privileges
34.15. column_udt_usage
34.16. columns
34.17. constraint_column_usage
34.18. constraint_table_usage
34.19. data_type_privileges
34.20. domain_constraints
34.21. domain_udt_usage
34.22. domains
34.23. element_types
34.24. enabled_roles
34.25. foreign_data_wrapper_options
34.26. foreign_data_wrappers
34.27. foreign_server_options
34.28. foreign_servers
34.29. foreign_table_options
34.30. foreign_tables
34.31. key_column_usage
34.32. parameters
34.33. referential_constraints
34.34. role_column_grants
34.35. role_routine_grants
34.36. role_table_grants
34.37. role_udt_grants
34.38. role_usage_grants
34.39. routine_privileges
34.40. routines
34.41. schemata
34.42. sequences
34.43. sql_features
34.44. sql_implementation_info
34.45. sql_languages
34.46. sql_packages
34.47. sql_parts
34.48. sql_sizing
34.49. sql_sizing_profiles
34.50. table_constraints
34.51. table_privileges
34.52. tables
34.53. transforms
34.54. triggered_update_columns
34.55. triggers
34.56. udt_privileges
34.57. usage_privileges
34.58. user_defined_types
34.59. user_mapping_options
34.60. user_mappings
34.61. view_column_usage
34.62. view_routine_usage
34.63. view_table_usage
34.64. views

Part IV. Client Interfaces

This part describes the client programming interfaces distributed with Postgres Pro. Each of these chapters can be read independently. Note that there are many other programming interfaces for client programs that are distributed separately and contain their own documentation (Appendix H lists some of the more popular ones). Readers of this part should be familiar with using SQL commands to manipulate and query the database (see Part II) and of course with the programming language that the interface uses.

Table of Contents

31. libpq - C Library
31.1. Database Connection Control Functions
31.2. Connection Status Functions
31.3. Command Execution Functions
31.4. Asynchronous Command Processing
31.5. Retrieving Query Results Row-By-Row
31.6. Canceling Queries in Progress
31.7. The Fast-Path Interface
31.8. Asynchronous Notification
31.9. Functions Associated with the COPY Command
31.10. Control Functions
31.11. Miscellaneous Functions
31.12. Notice Processing
31.13. Event System
31.14. Environment Variables
31.15. The Password File
31.16. The Connection Service File
31.17. LDAP Lookup of Connection Parameters
31.18. SSL Support
31.19. Behavior in Threaded Programs
31.20. Building libpq Programs
31.21. Example Programs
32. Large Objects
32.1. Introduction
32.2. Implementation Features
32.3. Client Interfaces
32.4. Server-side Functions
32.5. Example Program
33. ECPG - Embedded SQL in C
33.1. The Concept
33.2. Managing Database Connections
33.3. Running SQL Commands
33.4. Using Host Variables
33.5. Dynamic SQL
33.6. pgtypes Library
33.7. Using Descriptor Areas
33.8. Error Handling
33.9. Preprocessor Directives
33.10. Processing Embedded SQL Programs
33.11. Library Functions
33.12. Large Objects
33.13. C++ Applications
33.14. Embedded SQL Commands
33.15. Informix Compatibility Mode
33.16. Internals
34. The Information Schema
34.1. The Schema
34.2. Data Types
34.3. information_schema_catalog_name
34.4. administrable_role_authorizations
34.5. applicable_roles
34.6. attributes
34.7. character_sets
34.8. check_constraint_routine_usage
34.9. check_constraints
34.10. collations
34.11. collation_character_set_applicability
34.12. column_domain_usage
34.13. column_options
34.14. column_privileges
34.15. column_udt_usage
34.16. columns
34.17. constraint_column_usage
34.18. constraint_table_usage
34.19. data_type_privileges
34.20. domain_constraints
34.21. domain_udt_usage
34.22. domains
34.23. element_types
34.24. enabled_roles
34.25. foreign_data_wrapper_options
34.26. foreign_data_wrappers
34.27. foreign_server_options
34.28. foreign_servers
34.29. foreign_table_options
34.30. foreign_tables
34.31. key_column_usage
34.32. parameters
34.33. referential_constraints
34.34. role_column_grants
34.35. role_routine_grants
34.36. role_table_grants
34.37. role_udt_grants
34.38. role_usage_grants
34.39. routine_privileges
34.40. routines
34.41. schemata
34.42. sequences
34.43. sql_features
34.44. sql_implementation_info
34.45. sql_languages
34.46. sql_packages
34.47. sql_parts
34.48. sql_sizing
34.49. sql_sizing_profiles
34.50. table_constraints
34.51. table_privileges
34.52. tables
34.53. transforms
34.54. triggered_update_columns
34.55. triggers
34.56. udt_privileges
34.57. usage_privileges
34.58. user_defined_types
34.59. user_mapping_options
34.60. user_mappings
34.61. view_column_usage
34.62. view_routine_usage
34.63. view_table_usage
34.64. views
FAQ