diff --git a/src/Dibi/Connection.php b/src/Dibi/Connection.php index 2efbf9cc..5b5d8c4c 100644 --- a/src/Dibi/Connection.php +++ b/src/Dibi/Connection.php @@ -315,7 +315,7 @@ class Connection implements IConnection $this->connect(); } $id = $this->driver->getInsertId($sequence); - if ($id < 1) { + if ($id === null) { throw new Exception('Cannot retrieve last generated ID.'); } return $id; diff --git a/src/Dibi/Drivers/MySqliDriver.php b/src/Dibi/Drivers/MySqliDriver.php index e8493f2c..f90be95e 100644 --- a/src/Dibi/Drivers/MySqliDriver.php +++ b/src/Dibi/Drivers/MySqliDriver.php @@ -199,7 +199,7 @@ class MySqliDriver implements Dibi\Driver */ public function getInsertId(?string $sequence): ?int { - return $this->connection->insert_id; + return $this->connection->insert_id ?: null; } diff --git a/src/Dibi/Drivers/SqliteDriver.php b/src/Dibi/Drivers/SqliteDriver.php index 1f97f509..55886c5f 100644 --- a/src/Dibi/Drivers/SqliteDriver.php +++ b/src/Dibi/Drivers/SqliteDriver.php @@ -139,7 +139,7 @@ class SqliteDriver implements Dibi\Driver */ public function getInsertId(?string $sequence): ?int { - return $this->connection->lastInsertRowID(); + return $this->connection->lastInsertRowID() ?: null; }