====== Connection ====== **Connection** - группа классов, используемых для создания и хранения подключений к базе данных. {{{:limb3_2007_2:ru:packages:dbal:limb_3_x_2007_2_dbal_db_connection.png|: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-файла.