DALphpPDO — это библиотека PHP , которая позволяет подключаться, запрашивать и получать результаты из всех основных реляционных баз данных.
конфигурации находятся в файле /Settings.php . Пример конфигураций MySQL:
'mysql' => [ //the default pool (driver)
'driver' => 'mysql',
'host' => 'localhost',
'dbname' => 'database_name',
'user' => 'user',
'password' => 'passwd',
'prefix' => 'DB1_',
'port' => 3306,
'persistent' => 1,
'fetchmode' => 'object',
'prepare' => 1
],
конфигурации задуманы как пулы, каждый пул имеет соответствующее имя драйвера РСУБД в качестве глобального имени пула, как в примере выше. загрузка этих конфигураций проста:
$configs = new DatabaseConfiguration();
/**
* without parameters loads the default configurations
* for the default pool which is mysql
*/
или:
$configs = new DatabaseConfiguration('pgsql');
или
$configs = new DatabaseConfiguration('odbc', 'path/to/settings/file');
для создания экземпляра соединения требуется объект DatabaseConfiguration, который содержит все необходимые параметры для открытия соединения через PDO PHP. создание экземпляра соединения очень просто:
$dbConnect = new DatabaseConnection($configs);
для запросов к базе данных вам необходимо создать экземпляр QueryBuilderBase, который является механизмом, который генерирует запросы SQL и выполняет их без необходимости напрямую иметь дело с синтаксисом SQL. все, что нужно этому объекту, — это объект DatabaseConnection, который содержит всю необходимую информацию для подключения к базе данных.
$qb = new QueryBuilderBase($dbConnect);
создавать запросы так же просто, как создавать собственные запросы SQL.
$qb->select('column_name')->from('table_name');
//selects a spesific column from the spesific table
или
$qb->select(['column_name', 'column_name',...])->from('table_name');
//selects multiple columns from the spesific table
или
$qb->select()->from('table_name');
//selects all columns from the spesific table
$qb->select('column_name')->from('table_name')->where("column = value");
$qb->select('column_name')->from('table_name')->where("column = value")->andWhere("column = value");
$qb->select('column_name')->from('table_name')->where("column = value")->orWhere("column = value");
$qb->select('column_name')->from('table_name')->where("column = value")->orWhere("column = value")->groupBy("column_name");