diff --git a/src/Database/Adapter/MariaDB.php b/src/Database/Adapter/MariaDB.php index 23cce605a..ddb72d5a8 100644 --- a/src/Database/Adapter/MariaDB.php +++ b/src/Database/Adapter/MariaDB.php @@ -585,6 +585,9 @@ public function createDocuments(string $collection, array $documents, int $batch $attributes['_createdAt'] = $document->getCreatedAt(); $attributes['_updatedAt'] = $document->getUpdatedAt(); $attributes['_permissions'] = \json_encode($document->getPermissions()); + if(!empty($document->getInternalId())) { + $attributes['_id'] = $document->getInternalId(); + } $columns = []; foreach (\array_keys($attributes) as $key => $attribute) { diff --git a/src/Database/Adapter/Mongo/MongoDBAdapter.php b/src/Database/Adapter/Mongo/MongoDBAdapter.php index dcca8023b..690be6bd8 100644 --- a/src/Database/Adapter/Mongo/MongoDBAdapter.php +++ b/src/Database/Adapter/Mongo/MongoDBAdapter.php @@ -397,6 +397,9 @@ public function createDocuments(string $collection, array $documents, int $batch $records = []; foreach ($documents as $document) { + if(!empty($document->getInternalId())) { + $document->setAttribute('_id', $document->getInternalId()); + } $document->removeAttribute('$internalId'); $records[] = $this->replaceChars('$', '_', (array)$document);