diff --git a/typo3/sysext/core/Classes/Database/PreparedStatement.php b/typo3/sysext/core/Classes/Database/PreparedStatement.php
index fe1e5f995f910d2d66a0f5d48e95ca8a6d73db95..d1db63254cfc2d38c29f770c13382a2f9c5818f4 100644
--- a/typo3/sysext/core/Classes/Database/PreparedStatement.php
+++ b/typo3/sysext/core/Classes/Database/PreparedStatement.php
@@ -597,7 +597,7 @@ class PreparedStatement
      */
     protected function convertNamedPlaceholdersToQuestionMarks(&$query, array &$parameterValues, array &$precompiledQueryParts)
     {
-        $queryPartsCount = count($precompiledQueryParts['queryParts']);
+        $queryPartsCount = is_array($precompiledQueryParts['queryParts']) ? count($precompiledQueryParts['queryParts']) : 0;
         $newParameterValues = [];
         $hasNamedPlaceholders = false;