Для PostgreSQL


pgsql://user:password@host[:port]|[local]/database?
   charset=значение&
   ClientCharset=кодировка& [3.1.2]
   autocommit=1&
   datestyle=ISO,SQL,Postgres,European,US,German
      по умолчанию ISO

Необязательные параметры:
port - номер порта.

Можно задать:
user:password@host:port/database,

а можно:
user:password@local/database

В этом случае произойдет соединение с сервером, расположенным на локальной машине.

charset - сразу после соединения выполняет команду «SET CLIENT_ENCODING=значение»;
ClientCharset - задает кодировку, в которой необходимо общаться с SQL-сервером, перекодированием занимается драйвер;
autocommit - по умолчанию Parser автоматически выполняет COMMIT после каждого успешно выполненного запроса. Если указать опцию autocommit=0, то такое поведение будет изменено и все запросы, написанные внутри одного оператора connect будут выполняться в рамках одной транзакции;
datestyle - если задан этот параметр, то при соединении с сервером драйвер выполнит команду «SET DATESTYLE=значение»


Пример: перекодирование средствами SQL сервера (рекомендуется)
Допустим данные в вашей базе хранятся в кодировке UTF-8, а сайт работает в кодировке windows-1251, в этом случае нужно использовать следующую строку подключения:pgsql://user:password@host/database?charset=win
В этом случае сразу после соединения SQL серверу будет выдана команда «SET CLIENT ENCODING=win» и сервер сам будет перекодировать принимаемые данные из кодировки win в кодировку, в которой данных хранятся у него в таблице и обратно.
Внимание: в данном случае вы должны указать кодировку, в которой работает сайт.Внимание: данная опция выполняет команду PgSQL, поэтому необходимо использовать названия кодировок PgSQL сервера, которые отличаются от названий кодировок Parser, определяемых вами в конфигурационном файле.


Пример: перекодирование драйвером (работает со всеми версиями PgSQL сервера)
В некоторых редких случаях бывает, что невозможно использовать функции перекодирования, предоставляемые PgSQL сервером. Тогда можно задействовать механизмы перекодирования драйвера, используя опцию ClientCharset.
Допустим, данные в вашей базе хранятся в кодировке
windows-1251, а сайт работает в кодировке koi8-r, в этом случае можно использовать такую строку подключения:
pgsql://user:password@host/database?ClientCharset=windows-1251

В этом случае отправляемые SQL серверу данные будут перекодироваться драйвером из кодировки $request:charset (в данном примере koi8-r) в кодировку windows-1251, а принимаемые от SQL сервера данные - обратно.
Внимание: в данном случае вы должны указать кодировку, в которой данные хранятся в базе данных.
Внимание: в данной опции вы должны указывать названия кодировок Parser, которые определяются вами в конфигурационном файле.


    Поддержать сайт на родительском проекте КГБ