Создать новое соединение (connect)

Назначение
 

Метод connect создает новое соединения с СУБД и объект класса «соединение». Вызов метода может быть произведен как через объект класса Linter, так и непосредственно через класс DBI.

Пакет

Package Linter::dr

Прототип
$dbh = $drh-​>connect($data_source,$username,$password[, \%attr]);

$dbh = DBI-​>connect($data_source, $username, $password [, \%attr]);
Параметр Описание
$data_source Строка подключения вида
"dbi:Linter(database =​> <​dbname​>, mode =​> {autocommit | optimistic | exclusive},
codepage =​> {CP_1251|CP_866,CP_UTF8|KOI8|<​codepage_name​>}):"

где:

<​dbname​> – имя узла локальной сети, на котором установлена СУБД ЛИНТЕР. Имя этого узла и параметры доступа к нему должны быть прописаны в файле сетевой конфигурации nodetab (см. документ «Сетевые средства»). Для доступа к локальной СУБД ЛИНТЕР по умолчанию значение <​dbname​> должно быть пустым.

<​codepage_name​> – имя кодовой страницы, присутствующей в системной таблице $$$CHARSET (см. документ «Системные таблицы и представления»). Все параметры подключения (кроме <​dbname​>) можно задать через параметр %attr.

Примечания

  1. Наличие двоеточия в конце строки подключения после закрывающей скобки обязательно.

  2. Режим OPTIMISTIC устарел (использовать не рекомендуется).

$username Имя пользователя БД (регистр символов учитывается) длиной не более 66 символов. Если длина имени больше 66 символов, то она усекается
$password Пароль пользователя БД (регистр символов учитывается) длиной не более 18 символов. Если длина пароля больше 18 символов, то она усекается
\%attr Ссылка на список атрибутов создаваемого соединения:
%attributes=
(mode =​>
{autocommit | optimistic | exclusive},
 codepage =​>
{CP_866 | CP_1251 | CP_UTF8 | KOI8 | <​codepage_name​>})

где:

<​codepage_name​> – имя кодовой страницы, присутствующей в системной таблице $$$CHARSET (см. документ «Системные таблицы и представления»).

Значения по умолчанию:

mode =​> autocommit
codepage =​> CP_866

Примечание

Режим OPTIMISTIC устарел (использовать не рекомендуется).

Примечание

При одновременном задании атрибутов подключения в строке подключения и через параметр %attr используются значения, заданные в параметре %attr.

Например:

%attr = (mode =​> exclusive, codepage =​> CP_866);
$dbh = $drh-​>connect("dbi:Linter(database =​> DEMO, mode =​> optimistic, codepage =​> CP_1251)", "SYSTEM", "MANAGER8", \%attr);

В итоге соединение будет открыто в транзакционном режиме EXCLUSIVE с установленной кодовой страницей CP_866.

Возвращаемые значения
Переменная Описание
$dbh:  
описатель БД Нормальное завершение
undef Ошибка соединения с СУБД
$DBI::errstr Диагностическое сообщение (в случае ошибки соединения с СУБД)