@@ -16,6 +16,9 @@ |
||
| 16 | 16 | */ |
| 17 | 17 | interface DeleteInterface extends StatementInterface{ |
| 18 | 18 | |
| 19 | + /** |
|
| 20 | + * @return void |
|
| 21 | + */ |
|
| 19 | 22 | public function from(); |
| 20 | 23 | public function where($val1, $val2, $operator = '=', $bind = true, $join = 'AND'):DeleteInterface; |
| 21 | 24 | |
@@ -18,6 +18,10 @@ |
||
| 18 | 18 | |
| 19 | 19 | public function sql():string; |
| 20 | 20 | public function bindValues():array; |
| 21 | + |
|
| 22 | + /** |
|
| 23 | + * @return void |
|
| 24 | + */ |
|
| 21 | 25 | public function execute(); |
| 22 | 26 | public function quote(string $str):string; |
| 23 | 27 | |
@@ -53,7 +53,7 @@ |
||
| 53 | 53 | /** |
| 54 | 54 | * @param $val1 |
| 55 | 55 | * @param null $val2 |
| 56 | - * @param null $operator |
|
| 56 | + * @param string $operator |
|
| 57 | 57 | * @param bool $bind |
| 58 | 58 | * @param string $join |
| 59 | 59 | * |
@@ -141,7 +141,7 @@ |
||
| 141 | 141 | $where = []; |
| 142 | 142 | |
| 143 | 143 | foreach($this->where as $k => $v){ |
| 144 | - $last = $this->where[$k-1] ?? false; |
|
| 144 | + $last = $this->where[$k - 1] ?? false; |
|
| 145 | 145 | # print_r([$last, $v]); |
| 146 | 146 | |
| 147 | 147 | if(in_array($v, ['AND', 'OR', 'XOR', '(', ')'], true)){ |
@@ -16,8 +16,19 @@ |
||
| 16 | 16 | */ |
| 17 | 17 | interface UpdateInterface extends StatementInterface{ |
| 18 | 18 | |
| 19 | + /** |
|
| 20 | + * @return void |
|
| 21 | + */ |
|
| 19 | 22 | public function table(); |
| 23 | + |
|
| 24 | + /** |
|
| 25 | + * @return void |
|
| 26 | + */ |
|
| 20 | 27 | public function set(); |
| 28 | + |
|
| 29 | + /** |
|
| 30 | + * @return UpdateAbstract |
|
| 31 | + */ |
|
| 21 | 32 | public function where($val1, $val2, $operator = '=', $bind = true, $join = 'AND'); |
| 22 | 33 | |
| 23 | 34 | } |
@@ -11,15 +11,15 @@ |
||
| 11 | 11 | |
| 12 | 12 | namespace chillerlan\DatabaseTest\Query; |
| 13 | 13 | |
| 14 | -use chillerlan\Database\Drivers\PDO\PDOMySQLDriver; |
|
| 14 | +use chillerlan\DatabaseTest\TestAbstract; |
|
| 15 | 15 | use chillerlan\Database\DBQuery; |
| 16 | +use chillerlan\Database\Drivers\PDO\PDOMySQLDriver; |
|
| 16 | 17 | use chillerlan\Database\Query\CreateInterface; |
| 17 | 18 | use chillerlan\Database\Query\CreateTableInterface; |
| 18 | 19 | use chillerlan\Database\Query\DeleteInterface; |
| 19 | 20 | use chillerlan\Database\Query\SelectInterface; |
| 20 | 21 | use chillerlan\Database\Query\StatementInterface; |
| 21 | 22 | use chillerlan\Database\Query\UpdateInterface; |
| 22 | -use chillerlan\DatabaseTest\TestAbstract; |
|
| 23 | 23 | |
| 24 | 24 | /** |
| 25 | 25 | * Class QueryTest |
@@ -54,7 +54,7 @@ |
||
| 54 | 54 | ->where('t2.what', 3) |
| 55 | 55 | ->openBracket('and') |
| 56 | 56 | ->where('t1.what', 't2.what', '>', false) |
| 57 | - ->where('t2.what', [1,2,3], 'in') |
|
| 57 | + ->where('t2.what', [1, 2, 3], 'in') |
|
| 58 | 58 | ->closeBracket() |
| 59 | 59 | ->where('t3.what', $this->statement->select->cols(['foo'])->from(['nope'])->where('bar', 42), 'in', true, 'or') |
| 60 | 60 | ->groupby(['foo', 'bar']) |
@@ -90,7 +90,7 @@ |
||
| 90 | 90 | $from = $table; |
| 91 | 91 | |
| 92 | 92 | if($ref){ |
| 93 | - $from = sprintf('%s AS %s', $table, $ref);// @todo: index hint |
|
| 93 | + $from = sprintf('%s AS %s', $table, $ref); // @todo: index hint |
|
| 94 | 94 | } |
| 95 | 95 | |
| 96 | 96 | $this->from[$ref ?? $table] = $from; |
@@ -29,8 +29,8 @@ |
||
| 29 | 29 | |
| 30 | 30 | $sql = 'SELECT '; |
| 31 | 31 | $sql .= $this->distinct ? 'DISTINCT ' : ''; |
| 32 | - $sql .= implode($glue , $this->cols).PHP_EOL; |
|
| 33 | - $sql .= !empty($this->from) ? 'FROM '.implode($glue , $this->from) : ''; |
|
| 32 | + $sql .= implode($glue, $this->cols).PHP_EOL; |
|
| 33 | + $sql .= !empty($this->from) ? 'FROM '.implode($glue, $this->from) : ''; |
|
| 34 | 34 | $sql .= $this->_getWhere(); |
| 35 | 35 | $sql .= !empty($this->groupby) ? PHP_EOL.'GROUP BY '.implode($glue, $this->groupby) : ''; |
| 36 | 36 | $sql .= !empty($this->orderby) ? PHP_EOL.'ORDER BY '.implode($glue, $this->orderby) : ''; |