SQL: rename enablePositionalBinding() to setPositionalBindingEnabled()
... and the getter to isPositionalBindingEnabled() for QSqlQuery and QSqlResult. This amends e532933a2a9ff0219f0179880e05c95e0ec5e19d [ChangeLog][QtSql][QSqlQuery] Add setPositionalBindingEnabled() to be able to disable positional binding. Task-number: QTBUG-119952 Fixes: QTBUG-120548 Change-Id: I0a0afb652d0fc9421f5692b0927a66b2a9b7b854 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> (cherry picked from commit b1e5d9275d4cf6152e4e9456b1bc2d585a5512e2) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
This commit is contained in:
parent
656576d3b4
commit
4bc230ad05
@ -1270,31 +1270,33 @@ QSql::NumericalPrecisionPolicy QSqlQuery::numericalPrecisionPolicy() const
|
||||
}
|
||||
|
||||
/*!
|
||||
Enables or disables the positional binding for this query, depending
|
||||
on \a enable.
|
||||
This is useful when the query contains a '?' which must not be handled
|
||||
as a positional binding parameter but, for example, as a JSON operator
|
||||
for a Postgres database.
|
||||
Enables or disables the positional \l {Approaches to Binding Values}{binding}
|
||||
for this query, depending on \a enable (default is \c true).
|
||||
Disabling positional bindings is useful if the query itself contains a '?'
|
||||
which must not be handled as a positional binding parameter but, for example,
|
||||
as a JSON operator for a PostgreSQL database.
|
||||
|
||||
This function will have no effect when the database has native
|
||||
support for positional bindings with question marks.
|
||||
support for positional bindings with question marks (see also
|
||||
\l{QSqlDriver::PositionalPlaceholders}).
|
||||
|
||||
\since 6.7
|
||||
\sa positionalBindingEnabled()
|
||||
\sa isPositionalBindingEnabled()
|
||||
*/
|
||||
void QSqlQuery::enablePositionalBinding(bool enable)
|
||||
void QSqlQuery::setPositionalBindingEnabled(bool enable)
|
||||
{
|
||||
d->sqlResult->enablePositionalBinding(enable);
|
||||
d->sqlResult->setPositionalBindingEnabled(enable);
|
||||
}
|
||||
|
||||
/*!
|
||||
Returns true when the positional binding is currently enabled.
|
||||
Returns \c true if the positional binding is currently enabled.
|
||||
|
||||
\since 6.7
|
||||
\sa enablePositionalBinding()
|
||||
\sa setPositionalBindingEnabled()
|
||||
*/
|
||||
bool QSqlQuery::positionalBindingEnabled() const
|
||||
bool QSqlQuery::isPositionalBindingEnabled() const
|
||||
{
|
||||
return d->sqlResult->positionalBindingEnabled();
|
||||
return d->sqlResult->isPositionalBindingEnabled();
|
||||
}
|
||||
|
||||
|
||||
|
@ -69,8 +69,8 @@ public:
|
||||
void setNumericalPrecisionPolicy(QSql::NumericalPrecisionPolicy precisionPolicy);
|
||||
QSql::NumericalPrecisionPolicy numericalPrecisionPolicy() const;
|
||||
|
||||
void enablePositionalBinding(bool enable);
|
||||
bool positionalBindingEnabled() const;
|
||||
void setPositionalBindingEnabled(bool enable);
|
||||
bool isPositionalBindingEnabled() const;
|
||||
|
||||
bool seek(int i, bool relative = false);
|
||||
bool next();
|
||||
|
@ -1016,7 +1016,7 @@ QSql::NumericalPrecisionPolicy QSqlResult::numericalPrecisionPolicy() const
|
||||
|
||||
/*! \internal
|
||||
*/
|
||||
void QSqlResult::enablePositionalBinding(bool enable)
|
||||
void QSqlResult::setPositionalBindingEnabled(bool enable)
|
||||
{
|
||||
Q_D(QSqlResult);
|
||||
d->positionalBindingEnabled = enable;
|
||||
@ -1024,7 +1024,7 @@ void QSqlResult::enablePositionalBinding(bool enable)
|
||||
|
||||
/*! \internal
|
||||
*/
|
||||
bool QSqlResult::positionalBindingEnabled() const
|
||||
bool QSqlResult::isPositionalBindingEnabled() const
|
||||
{
|
||||
Q_D(const QSqlResult);
|
||||
return d->positionalBindingEnabled;
|
||||
|
@ -102,8 +102,8 @@ protected:
|
||||
virtual void detachFromResultSet();
|
||||
virtual void setNumericalPrecisionPolicy(QSql::NumericalPrecisionPolicy policy);
|
||||
QSql::NumericalPrecisionPolicy numericalPrecisionPolicy() const;
|
||||
void enablePositionalBinding(bool enable);
|
||||
bool positionalBindingEnabled() const;
|
||||
void setPositionalBindingEnabled(bool enable);
|
||||
bool isPositionalBindingEnabled() const;
|
||||
virtual bool nextResult();
|
||||
void resetBindCount(); // HACK
|
||||
|
||||
|
@ -5067,7 +5067,8 @@ void tst_QSqlQuery::positionalBindingEnabled()
|
||||
QVERIFY_SQL(qry, exec("CREATE TABLE " + tableName + " (integer_col integer)"));
|
||||
QVERIFY_SQL(qry, exec("INSERT INTO " + tableName + "(integer_col) VALUES(42)"));
|
||||
|
||||
qry.enablePositionalBinding(true);
|
||||
qry.setPositionalBindingEnabled(true);
|
||||
QCOMPARE(qry.isPositionalBindingEnabled(), true);
|
||||
QVERIFY_SQL(qry, prepare("SELECT integer_col FROM " + tableName + " WHERE integer_col = :integer_val"));
|
||||
qry.bindValue(":integer_val", 42);
|
||||
QVERIFY_SQL(qry, exec());
|
||||
@ -5079,7 +5080,8 @@ void tst_QSqlQuery::positionalBindingEnabled()
|
||||
QVERIFY_SQL(qry, next());
|
||||
QCOMPARE(qry.value(0).toInt(), 42);
|
||||
|
||||
qry.enablePositionalBinding(false);
|
||||
qry.setPositionalBindingEnabled(false);
|
||||
QCOMPARE(qry.isPositionalBindingEnabled(), false);
|
||||
QVERIFY_SQL(qry, prepare("SELECT integer_col FROM " + tableName + " WHERE integer_col = :integer_val"));
|
||||
qry.bindValue(":integer_val", 42);
|
||||
QVERIFY_SQL(qry, exec());
|
||||
@ -5109,7 +5111,7 @@ void tst_QSqlQuery::psqlJsonOperator()
|
||||
const QString &tableName = ts.tableName();
|
||||
|
||||
QSqlQuery qry(db);
|
||||
qry.enablePositionalBinding(false); // don't allow / handle '?' as placeholder
|
||||
qry.setPositionalBindingEnabled(false); // don't allow / handle '?' as placeholder
|
||||
QVERIFY_SQL(qry, exec("CREATE TABLE " + tableName + " (integer_col integer, json_col jsonb)"));
|
||||
QVERIFY_SQL(qry, exec("INSERT INTO " + tableName + "(integer_col, json_col) VALUES(42, '{\"a\": [1, 2]}')"));
|
||||
QVERIFY_SQL(qry, exec("INSERT INTO " + tableName + "(integer_col, json_col) VALUES(43, '{\"b\": [3, 4]}')"));
|
||||
|
Loading…
x
Reference in New Issue
Block a user