diff --git a/src/sql/kernel/qsqlresult.cpp b/src/sql/kernel/qsqlresult.cpp index b720e40d8ab..2509d5a8b3a 100644 --- a/src/sql/kernel/qsqlresult.cpp +++ b/src/sql/kernel/qsqlresult.cpp @@ -597,13 +597,12 @@ bool QSqlResult::savePrepare(const QString& query) if (!driver()->hasFeature(QSqlDriver::PreparedQueries)) return prepare(query); - if (driver()->hasFeature(QSqlDriver::NamedPlaceholders)) { - // parse the query to memorize parameter location - d->namedToPositionalBinding(); + // parse the query to memorize parameter location + d->executedQuery = d->namedToPositionalBinding(); + + if (driver()->hasFeature(QSqlDriver::NamedPlaceholders)) d->executedQuery = d->positionalToNamedBinding(); - } else { - d->executedQuery = d->namedToPositionalBinding(); - } + return prepare(d->executedQuery); }