Ignore:
Timestamp:
Feb 11, 2010, 11:19:06 PM (15 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.6.1 sources.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/src/sql/models/qsqltablemodel.cpp

    r2 r561  
    22**
    33** Copyright (C) 2009 Nokia Corporation and/or its subsidiary(-ies).
    4 ** Contact: Qt Software Information ([email protected])
     4** All rights reserved.
     5** Contact: Nokia Corporation ([email protected])
    56**
    67** This file is part of the QtSql module of the Qt Toolkit.
     
    2122** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
    2223**
    23 ** In addition, as a special exception, Nokia gives you certain
    24 ** additional rights. These rights are described in the Nokia Qt LGPL
    25 ** Exception version 1.0, included in the file LGPL_EXCEPTION.txt in this
    26 ** package.
     24** In addition, as a special exception, Nokia gives you certain additional
     25** rights.  These rights are described in the Nokia Qt LGPL Exception
     26** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
    2727**
    2828** GNU General Public License Usage
     
    3434** met: http://www.gnu.org/copyleft/gpl.html.
    3535**
    36 ** If you are unsure which license is appropriate for your use, please
    37 ** contact the sales department at qt-sales@nokia.com.
     36** If you
     37** @nokia.com.
    3838** $QT_END_LICENSE$
    3939**
     
    9999int QSqlTableModelPrivate::nameToIndex(const QString &name) const
    100100{
    101     return rec.indexOf(name);
     101    QString fieldname = name;
     102    if (db.driver()->isIdentifierEscaped(fieldname, QSqlDriver::FieldName))
     103        fieldname = db.driver()->stripDelimiters(fieldname, QSqlDriver::FieldName);
     104    return rec.indexOf(fieldname);
    102105}
    103106
     
    203206        }
    204207        for (i = 0; i < whereValues.count(); ++i) {
    205             if (whereValues.isGenerated(i))
     208            if (whereValues.isGenerated(i))
    206209                editQuery.addBindValue(whereValues.value(i));
    207210        }
     
    368371    Q_D(QSqlTableModel);
    369372    clear();
    370     if(d->db.tables().contains(tableName.toUpper()))
    371         d->tableName = tableName.toUpper();
    372     else
    373         d->tableName = tableName;
     373    d->tableName = tableName;
    374374    d->initRecordAndPrimaryIndex();
    375375    d->initColOffsets(d->rec.count());
     
    407407    setQuery(qu);
    408408
    409     if (!qu.isActive()) {
     409    if (!qu.isActive()) {
    410410        // something went wrong - revert to non-select state
    411411        d->initRecordAndPrimaryIndex();
     
    539539        if (isOk)
    540540            select();
     541
    541542        break; }
    542543    case OnRowChange:
     
    559560            row.op = QSqlTableModelPrivate::Update;
    560561            row.rec = d->rec;
    561                         row.primaryValues = d->primaryValues(indexInQuery(index).row());
     562row.primaryValues = d->primaryValues(indexInQuery(index).row());
    562563        }
    563564        row.rec.setValue(index.column(), value);