public function __construct(Connection $conn, BaseBuilder $builder = null, Logger $logger = null)
{
$this->conn = $conn;
$this->queryDriver = $conn->createQueryDriver();
if (!$builder) {
$builder = SqlBuilder::create($this->queryDriver);
}
$this->builder = $builder;
if (!$logger) {
$c = ServiceContainer::getInstance();
$logger ?: $c['logger'];
}
$this->logger = $logger;
}