Skip to content

Commit f0e3796

Browse files
committed
added Nette\Database\QueryException
1 parent 7831fcd commit f0e3796

File tree

4 files changed

+40
-18
lines changed

4 files changed

+40
-18
lines changed

src/Database/DriverException.php

Lines changed: 0 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,6 @@
1515
*/
1616
class DriverException extends \Exception
1717
{
18-
public ?string $queryString = null;
19-
public ?array $params = null;
2018
private int|string|null $driverCode = null;
2119
private string|null $sqlState = null;
2220

@@ -50,16 +48,4 @@ public function getSqlState(): ?string
5048
{
5149
return $this->sqlState;
5250
}
53-
54-
55-
public function getQueryString(): ?string
56-
{
57-
return $this->queryString;
58-
}
59-
60-
61-
public function getParameters(): ?array
62-
{
63-
return $this->params;
64-
}
6551
}

src/Database/Drivers/PdoDriver.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,8 @@ public function query(string $queryString, array $params): PdoResultDriver
5858
return new PdoResultDriver($statement, $this);
5959

6060
} catch (PDOException $e) {
61-
$e = $this->convertException($e);
62-
$e->queryString = $queryString;
63-
$e->params = $params;
61+
$e = $this->convertException($e, Nette\Database\QueryException::class);
62+
$e->setQueryString($queryString, $params);
6463
throw $e;
6564
}
6665
}

src/Database/QueryException.php

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<?php
2+
3+
/**
4+
* This file is part of the Nette Framework (https://nette.org)
5+
* Copyright (c) 2004 David Grudl (https://davidgrudl.com)
6+
*/
7+
8+
declare(strict_types=1);
9+
10+
namespace Nette\Database;
11+
12+
13+
class QueryException extends DriverException
14+
{
15+
public string $queryString;
16+
private array $params;
17+
18+
19+
/** @internal */
20+
public function setQueryString(string $queryString, array $params): void
21+
{
22+
$this->queryString = $queryString;
23+
$this->params = $params;
24+
}
25+
26+
27+
public function getQueryString(): string
28+
{
29+
return $this->queryString;
30+
}
31+
32+
33+
public function getParameters(): array
34+
{
35+
return $this->params;
36+
}
37+
}

src/Database/exceptions.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class ConnectionException extends DriverException
2121
/**
2222
* Base class for all constraint violation related exceptions.
2323
*/
24-
class ConstraintViolationException extends DriverException
24+
class ConstraintViolationException extends QueryException
2525
{
2626
}
2727

0 commit comments

Comments
 (0)