diff options
author | Andy Shaw <andy.shaw@qt.io> | 2017-05-19 15:31:46 +0200 |
---|---|---|
committer | Andy Shaw <andy.shaw@qt.io> | 2017-07-12 09:01:50 +0000 |
commit | 0843c6ca7fe604d8c44b9a81b8fcb072ab424172 (patch) | |
tree | e6784759b9dd8729d5bd179a38552170e084a723 /src/plugins/sqldrivers/tds | |
parent | 9423be1f190bd7cdeb04add39f4ec621a33a3041 (diff) |
QSqlField: Add a means to see what the tablename is for a given field
When you are using a query that pulls from a number of different tables
then it can be ambiguous as to which table a particular field belongs to.
So this will make it possible to determine the table that a given field
belongs to if it is set.
Task-number: QTBUG-7170
Change-Id: I49b7890c0523d81272a153df3860df800ff853d5
Reviewed-by: Jesus Fernandez <Jesus.Fernandez@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src/plugins/sqldrivers/tds')
-rw-r--r-- | src/plugins/sqldrivers/tds/qsql_tds.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/plugins/sqldrivers/tds/qsql_tds.cpp b/src/plugins/sqldrivers/tds/qsql_tds.cpp index 6ebd09a572..670198af81 100644 --- a/src/plugins/sqldrivers/tds/qsql_tds.cpp +++ b/src/plugins/sqldrivers/tds/qsql_tds.cpp @@ -767,7 +767,7 @@ QSqlRecord QTDSDriver::record(const QString& tablename) const "where id = (select id from sysobjects where name = '%1')")); t.exec(stmt.arg(table)); while (t.next()) { - QSqlField f(t.value(0).toString().simplified(), qDecodeTDSType(t.value(1).toInt())); + QSqlField f(t.value(0).toString().simplified(), qDecodeTDSType(t.value(1).toInt()), tablename); f.setLength(t.value(2).toInt()); f.setPrecision(t.value(3).toInt()); f.setSqlType(t.value(1).toInt()); @@ -853,7 +853,7 @@ QSqlIndex QTDSDriver::primaryIndex(const QString& tablename) const QRegExp regx(QLatin1String("\\s*(\\S+)(?:\\s+(DESC|desc))?\\s*")); for(QStringList::Iterator it = fNames.begin(); it != fNames.end(); ++it) { regx.indexIn(*it); - QSqlField f(regx.cap(1), rec.field(regx.cap(1)).type()); + QSqlField f(regx.cap(1), rec.field(regx.cap(1)).type(), tablename); if (regx.cap(2).toLower() == QLatin1String("desc")) { idx.append(f, true); } else { |