MySQL Queries

This commit is contained in:
Juan Pablo Vial
2022-09-08 17:41:21 -04:00
parent a2d560ab1d
commit 6de6720c3e
4 changed files with 71 additions and 0 deletions

View File

@ -0,0 +1,7 @@
<?php
namespace ProVM\Database\Query\MySQL;
use ProVM\Alias\Database\Query\Delete as Base;
class Delete extends Base
{}

View File

@ -0,0 +1,7 @@
<?php
namespace ProVM\Database\Query\MySQL;
use ProVM\Alias\Database\Query\Insert as Base;
class Insert extends Base
{}

View File

@ -0,0 +1,50 @@
<?php
namespace ProVM\Database\Query\MySQL;
use ProVM\Alias\Database\Query\Select as Base;
class Select extends Base
{
public function limit(int $limit, ?int $offset = null): Select
{
$this->setLimit($limit);
if ($offset !== null) {
$this->setOffset($offset);
}
return $this;
}
protected int $limit;
public function setLimit(int $limit): Select
{
$this->limit = $limit;
return $this;
}
public function getLimit(): int
{
return $this->limit;
}
protected int $offset;
public function setOffset(int $offset): Select
{
$this->offset = $offset;
return $this;
}
public function getOffset(): int
{
return $this->offset;
}
public function build(): string
{
$query = [parent::build()];
if (isset($this->limit)) {
$query []= 'LIMIT';
$query []= $this->getLimit();
if (isset($this->offset)) {
$query []= 'OFFSET';
$query []= $this->getOffset();
}
}
return implode(' ', $query);
}
}

View File

@ -0,0 +1,7 @@
<?php
namespace ProVM\Database\Query\MySQL;
use ProVM\Alias\Database\Query\Update as Base;
class Update extends Base
{}