Connection

Connection - группа классов, используемых для создания и хранения подключений к базе данных.

:limb3_2007_2:ru:packages:dbal:limb_3_x_2007_2_dbal_db_connection.png}

В пакет DBAL добавлены средства, которые позволяют клиентам не создавать самостоятельно объекты DBC (в отличие от WACT DBAL), а использовать общее хранилище подключений. Также есть средства, позволяющие использовать несколько соединений одновременно и созданных на основе различных конфигурационных данных. Например, при помощи lmbIniDbDSN можно создавать подключения на основе информации из ini файла.

Клиенты всегда получают соединение с базой данных через методы набора инструментов lmbDbTools:

  $sql = 'Select ...';
  $conn = lmbToolkit :: instance()->geDbConnection();
  $stmt = $conn->newStatement($sql);
  [...]
  $record_set = $stmt->getRecordSet();

Можно также использовать совсем другое соединение, чем то, которое предлагается по-умолчанию:

  $toolkit->setDefaultDbConfig(new lmbIniDbDSN(new Ini(PROJECT_DIR . '/settings/db-web-test.ini')));
  $conn = $toolkit->getDBConnection();

При желании можно сразу подключиться сразу к друм различным базам данных одновременно:

  $conn1 = $toolkit->getDBConnection(new lmbIniDbDSN(new Ini(PROJECT_DIR . '/settings/mysql.ini')));
  $conn2 = $toolkit->getDBConnection(new lmbIniDbDSN(new Ini(PROJECT_DIR . '/settings/pgsql.ini')));

По-умолчанию lmbIniDbDSN использует common.ini файл и группу DB внутри этого ini-файла.