add SQLiteDriver.php and change MySQLDriver.php

This commit is contained in:
crazywhalecc
2022-08-27 19:47:45 +08:00
parent 085472a12c
commit dd01653da9
4 changed files with 68 additions and 38 deletions

View File

@@ -0,0 +1,41 @@
<?php
declare(strict_types=1);
namespace ZM\Store\Database;
use Doctrine\DBAL\Driver as DoctrineDriver;
use Doctrine\DBAL\Platforms\MySqlPlatform;
use Doctrine\DBAL\Schema\MySqlSchemaManager;
class MySQLDriver implements DoctrineDriver
{
public function connect(array $params, $username = null, $password = null, array $driverOptions = [])
{
logger()->debug('Requiring new connection');
return new DBConnection($params);
}
public function getDatabasePlatform()
{
return new MySqlPlatform();
}
public function getSchemaManager($conn)
{
return new MySqlSchemaManager($conn);
}
public function getName()
{
return 'pdo_mysql_pool';
}
public function getDatabase($conn)
{
if ($conn instanceof DBConnection) {
return config('database')[$conn->getPoolName()]['dbname'] ?? '';
}
return '';
}
}

View File

@@ -0,0 +1,41 @@
<?php
declare(strict_types=1);
namespace ZM\Store\Database;
use Doctrine\DBAL\Driver as DoctrineDriver;
use Doctrine\DBAL\Platforms\SqlitePlatform;
use Doctrine\DBAL\Schema\SqliteSchemaManager;
class SQLiteDriver implements DoctrineDriver
{
public function connect(array $params, $username = null, $password = null, array $driverOptions = [])
{
logger()->debug('Requiring new connection');
return new DBConnection($params);
}
public function getDatabasePlatform()
{
return new SqlitePlatform();
}
public function getSchemaManager($conn)
{
return new SqliteSchemaManager($conn);
}
public function getName()
{
return 'pdo_sqlite_pool';
}
public function getDatabase($conn)
{
if ($conn instanceof DBConnection) {
return config('database')[$conn->getPoolName()]['dbname'] ?? '';
}
return '';
}
}