diff options
author | Jason McDonald <jason.mcdonald@nokia.com> | 2009-06-15 06:33:40 (GMT) |
---|---|---|
committer | Jason McDonald <jason.mcdonald@nokia.com> | 2009-06-15 06:33:40 (GMT) |
commit | c408b60e13f0928c6a3d99a9d2ef9d9b91ef8dfd (patch) | |
tree | d9cbd4155b30cee9e05dedbb9b8b9ce59777c2cb /src/sql/drivers/sqlite/qsql_sqlite.cpp | |
parent | c67bf926d05ebd090d6cc700b7fed33179f0a165 (diff) | |
download | Qt-c408b60e13f0928c6a3d99a9d2ef9d9b91ef8dfd.zip Qt-c408b60e13f0928c6a3d99a9d2ef9d9b91ef8dfd.tar.gz Qt-c408b60e13f0928c6a3d99a9d2ef9d9b91ef8dfd.tar.bz2 |
BT Revert "Fix the behaviour of sql classes regarding quoted identifiers"
This reverts commit bb7bddc47dd0748b45d22180d9e3c8e5209010b3
due to forward binary compatibility issues in a point release.
(cherry picked from commit b8430baeadd62b643ff07a2588c62141146c08fd)
Conflicts:
tests/auto/qsqldriver/tst_qsqldriver.cpp
Diffstat (limited to 'src/sql/drivers/sqlite/qsql_sqlite.cpp')
-rw-r--r-- | src/sql/drivers/sqlite/qsql_sqlite.cpp | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/src/sql/drivers/sqlite/qsql_sqlite.cpp b/src/sql/drivers/sqlite/qsql_sqlite.cpp index a8a4682..9883b4d 100644 --- a/src/sql/drivers/sqlite/qsql_sqlite.cpp +++ b/src/sql/drivers/sqlite/qsql_sqlite.cpp @@ -661,13 +661,9 @@ QSqlIndex QSQLiteDriver::primaryIndex(const QString &tblname) const if (!isOpen()) return QSqlIndex(); - QString table = tblname; - if (isIdentifierEscaped(table, QSqlDriver::TableName)) - table = stripDelimiters(table, QSqlDriver::TableName); - QSqlQuery q(createResult()); q.setForwardOnly(true); - return qGetTableInfo(q, table, true); + return qGetTableInfo(q, tblname, true); } QSqlRecord QSQLiteDriver::record(const QString &tbl) const @@ -675,13 +671,9 @@ QSqlRecord QSQLiteDriver::record(const QString &tbl) const if (!isOpen()) return QSqlRecord(); - QString table = tbl; - if (isIdentifierEscaped(table, QSqlDriver::TableName)) - table = stripDelimiters(table, QSqlDriver::TableName); - QSqlQuery q(createResult()); q.setForwardOnly(true); - return qGetTableInfo(q, table); + return qGetTableInfo(q, tbl); } QVariant QSQLiteDriver::handle() const @@ -689,10 +681,10 @@ QVariant QSQLiteDriver::handle() const return qVariantFromValue(d->access); } -QString QSQLiteDriver::escapeIdentifier(const QString &identifier, IdentifierType type) const +QString QSQLiteDriver::escapeIdentifier(const QString &identifier, IdentifierType /*type*/) const { QString res = identifier; - if(!identifier.isEmpty() && !isIdentifierEscaped(identifier, type) ) { + if(!identifier.isEmpty() && identifier.left(1) != QString(QLatin1Char('"')) && identifier.right(1) != QString(QLatin1Char('"')) ) { res.replace(QLatin1Char('"'), QLatin1String("\"\"")); res.prepend(QLatin1Char('"')).append(QLatin1Char('"')); res.replace(QLatin1Char('.'), QLatin1String("\".\"")); |