bool ConnectionData::passwordNeeded() const { DriverManager mananager; DriverInfo info = mananager.driverInfo(d->driverName); const bool fileBased = info.isValid() && info.isFileBased(); return !d->savePassword && !fileBased; //!< @todo temp.: change this if there are //!< file-based drivers requiring a password }
QString ConnectionData::serverInfoString(ServerInfoStringOptions options) const { if (!d->driverName.isEmpty()) { DriverManager mananager; const DriverInfo info = mananager.driverInfo(d->driverName); if (info.isValid() && info.isFileBased()) { if (d->databaseName.isEmpty()) { return QObject::tr("<file>"); } else { return QObject::tr("file: %1").arg(d->databaseName); } } } return ((d->userName.isEmpty() || !(options & AddUserToServerInfoString)) ? QString() : (d->userName + QLatin1Char('@'))) + (d->hostName.isEmpty() ? QLatin1String("localhost") : d->hostName) + (d->port != 0 ? (QLatin1Char(':') + QString::number(d->port)) : QString()); }
bool TestSqlParser::openDatabase(const QString &path) { QString driverName("sqlite"); DriverManager manager; qDebug() << manager.driverNames(); Driver *driver = manager.driver(driverName); if (!driver || manager.result().isError()) { qDebug() << manager.result(); return false; } ConnectionData cdata; cdata.setDatabaseName(path); m_conn.reset(driver->createConnection(cdata)); if (!m_conn || driver->result().isError()) { qDebug() << driver->result(); return false; } if (!m_conn->connect()) { qDebug() << m_conn->result(); return false; } m_parser.reset(new Parser(m_conn.data())); #if 0 if (m_conn->databaseExists(dbName)) { if (!m_conn->dropDatabase(dbName)) { m_conn->disconnect(); return false; } qDebug() << "Database" << dbName << "dropped."; } if (!m_conn->createDatabase(dbName)) { qDebug() << m_conn->result(); m_conn->disconnect(); return false; } #endif if (!m_conn->useDatabase()) { qDebug() << m_conn->result(); m_conn->disconnect(); return false; } return true; }
QString ConnectionData::serverInfoString(bool addUser) const { const QString& i18nFile = i18n("file"); if (!m_dbFileName.isEmpty()) return i18nFile+": "+(m_dbPath.isEmpty() ? "" : m_dbPath + QDir::separator()) + m_dbFileName; DriverManager man; if (!driverName.isEmpty()) { Driver::Info info = man.driverInfo(driverName); if (!info.name.isEmpty() && info.fileBased) return QString("<")+i18nFile+">"; } return ( (userName.isEmpty() || !addUser) ? QString("") : (userName+"@")) + (hostName.isEmpty() ? QString("localhost") : hostName) + (port!=0 ? (QString(":")+QString::number(port)) : QString::null); }
QString KexiDB::defaultFileBasedDriverName() { DriverManager dm; return dm.lookupByMime(KexiDB::defaultFileBasedDriverMimeType()).toLower(); }
QString Driver::defaultFileBasedDriverName() { DriverManager dm; return dm.lookupByMime(Driver::defaultFileBasedDriverMimeType()).lower(); }