// called on first fetch void QSQLite2ResultPrivate::init(const char **cnames, int numCols) { if (!cnames) return; rInf.clear(); if (numCols <= 0) return; q->init(numCols); for (int i = 0; i < numCols; ++i) { const char* lastDot = strrchr(cnames[i], '.'); const char* fieldName = lastDot ? lastDot + 1 : cnames[i]; //remove quotations around the field name if any QString fieldStr = QString::fromAscii(fieldName); QLatin1Char quote('\"'); if ( fieldStr.length() > 2 && fieldStr.startsWith(quote) && fieldStr.endsWith(quote)) { fieldStr = fieldStr.mid(1); fieldStr.chop(1); } rInf.append(QSqlField(fieldStr, nameToType(QString::fromAscii(cnames[i+numCols])))); } }
void QSpatiaLiteResultPrivate::cleanup() { finalize(); rInf.clear(); skippedStatus = false; skipRow = false; q->setAt(QSql::BeforeFirstRow); q->setActive(false); q->cleanup(); }
void QSQLite2ResultPrivate::cleanup() { finalize(); rInf.clear(); currentTail = 0; currentMachine = 0; skippedStatus = false; skipRow = false; q->setAt(QSql::BeforeFirstRow); q->setActive(false); q->cleanup(); }
void QSqlRecordProto::clear() { QSqlRecord *item = qscriptvalue_cast<QSqlRecord*>(thisObject()); if (item) item->clear(); }