×
Мы обрабатываем cookies, чтобы сделать наш сайт удобнее и персонализированнее для вас. Подробнее: политика использования «cookies» и «политики конфиденциальности».

Для самостоятельной настройки ознакомьтесь с инструкцией

Дополнительные настройки cookies в браузерах

Файлы cookie автоматически загружаются в ваш браузер при посещении веб-сайта. У вас есть возможность управлять этими файлами. Если Вы не согласны с использованием файлов cookies, запретите их сохранение на своём устройстве, удалите уже имеющиеся файлы cookies через настройки браузера или прекратите использование сайта.

При отключении обработки cookie наш сайт продолжит функционировать, однако будут использоваться исключительно необходимые технические файлы, без которых работа ресурса невозможна.

Инструкция по отключению cookies
Принять
Настроить
Отклонить

ДОКУМЕНТАЦИЯ

Выберите версию, форк и язык для СУБД Digital Q.DataBase, чтобы прочитать или скачать всю документацию.
Техподдержка
Документация
Диасофт
Авторские права © 2016–2025 ООО "Диасофт Экосистема"
Скачать всю документацию:

4.3.14.2. CONNECT

4.3.14.2. CONNECT

CONNECT — установка соединения с базой данных

Синтаксис

оператор CONNECT TO connection_target [ AS connection_name ] [ USER connection_user ]
CONNECT TO DEFAULT
CONNECT connection_user
DATABASE connection_target

Описание

Данный оператор CONNECT устанавливает соединение между клиентом и сервером PostgreSQL.

Параметры

connection_target #

connection_target определяет целевой сервер соединения в одной из нескольких доступных форм.

[ database_name ] [ @host ] [ :port ] #

Подключение по протоколу TCP/IP

unix:postgresql://host [ :port ] / [ database_name ] [ ?connection_option ] #

Подключение через Unix-сокеты

tcp:postgresql://host [ :port ] / [ database_name ] [ ?connection_option ] #

Подключение по протоколу TCP/IP

строковая константа SQL #

содержащая значение в одной из вышеуказанных форм

главная переменная #

главная переменная типа char[] или VARCHAR[] содержащая значение в одной из вышеуказанных форм

connection_name #

Необязательный идентификатор соединения, позволяющий ссылаться на него в других командах. Это может быть идентификатор SQL или главная переменная.

connection_user #

Имя пользователя для подключения к базе данных.

Данный параметр также может определять имя пользователя и пароль в одной из следующих форм: user_name/пароль, user_name IDENTIFIED BY пароль, или user_name USING пароль.

Имя пользователя и пароль могут быть идентификаторами SQL, строковыми константами или главными переменными.

DEFAULT #

Использовать все параметры соединения по умолчанию, как они определены в libpq.

Примеры

Ниже приведено несколько вариантов указания параметров соединения:

EXEC SQL CONNECT TO "connectdb" AS main;
EXEC SQL CONNECT TO "connectdb" AS second;
EXEC SQL CONNECT TO "unix:postgresql://200.46.204.71/connectdb" AS main USER connectuser;
EXEC SQL CONNECT TO "unix:postgresql://localhost/connectdb" AS main USER connectuser;
EXEC SQL CONNECT TO 'connectdb' AS main;
EXEC SQL CONNECT TO 'unix:postgresql://localhost/connectdb' AS main USER :user;
EXEC SQL CONNECT TO :db AS :id;
EXEC SQL CONNECT TO :db USER connectuser USING :pw;
EXEC SQL CONNECT TO @localhost AS main USER connectdb;
EXEC SQL CONNECT TO REGRESSDB1 as main;
EXEC SQL CONNECT TO AS main USER connectdb;
EXEC SQL CONNECT TO connectdb AS :id;
EXEC SQL CONNECT TO connectdb AS main USER connectuser/connectdb;
EXEC SQL CONNECT TO connectdb AS main;
EXEC SQL CONNECT TO connectdb@localhost AS main;
EXEC SQL CONNECT TO tcp:postgresql://localhost/ USER connectdb;
EXEC SQL CONNECT TO tcp:postgresql://localhost/connectdb USER connectuser IDENTIFIED BY connectpw;
EXEC SQL CONNECT TO tcp:postgresql://localhost:20/connectdb USER connectuser IDENTIFIED BY connectpw;
EXEC SQL CONNECT TO unix:postgresql://localhost/ AS main USER connectdb;
EXEC SQL CONNECT TO unix:postgresql://localhost/connectdb AS main USER connectuser;
EXEC SQL CONNECT TO unix:postgresql://localhost/connectdb USER connectuser IDENTIFIED BY "connectpw";
EXEC SQL CONNECT TO unix:postgresql://localhost/connectdb USER connectuser USING "connectpw";
EXEC SQL CONNECT TO unix:postgresql://localhost/connectdb?connect_timeout=14 USER connectuser;

Ниже представлен пример программы, иллюстрирующий использование главных переменных для определения параметров подключения:

int
main(void)
{
EXEC SQL BEGIN DECLARE SECTION;
    char *dbname     = "testdb";    /* имя базы данных dbname */
    char *user       = "testuser";  /* имя пользователя для подключения */
    char *connection = "tcp:postgresql://localhost:5432/testdb";
                                    /* строка подключения */
    char ver[256];                  /* буфер для хранения строки версии */
оператор EXEC SQL END DECLARE SECTION;

    ECPGdebug(1, stderr);

    оператор EXEC SQL CONNECT TO :dbname USER :user;
    оператор EXEC SQL SELECT функция pg_catalog.set_config('search_path', '', false); оператор COMMIT;
    оператор EXEC SQL SELECT version() предложение INTO :ver;
    EXEC SQL DISCONNECT;

    printf("version: %s\n", ver);

    оператор EXEC SQL CONNECT TO :connection USER :user;
    оператор EXEC SQL SELECT функция pg_catalog.set_config('search_path', '', false); оператор COMMIT;
    оператор EXEC SQL SELECT version() предложение INTO :ver;
    EXEC SQL DISCONNECT;

    printf("version: %s\n", ver);

    return 0;
}

Совместимость

CONNECT определен в стандарте SQL, однако формат параметров подключения зависит от конкретной реализации.

См. также

DISCONNECT, SET CONNECTION
Наверх
свяжитесь
с нами
контакты
Для прямой связи с нами вы можете использовать контакты ниже, либо оставить заявку через форму обратной связи, и мы обязательно свяжемся с вами

*поля обязательные к заполнению