0
私はsqlite3データベースを読むための簡単なQTプログラムを持っています。私のプログラムは、実際のデータベースがネットワーク上にマップされたドライブ(Windows 7)として動作していても、データベースがローカルドライブ上にある場合にはうまく動作しませんでした。私が使用しているコードは、実験的な目的のためだけです。Sqlite3 network oddity
QFileInfo fileInfo(m_lastDatabaseFile);
QString host = fileInfo.canonicalPath();
QString filename = fileInfo.fileName();
m_dataBase = QSqlDatabase::addDatabase("QSQLITE");
m_dataBase.setHostName(host);
m_dataBase.setDatabaseName(filename);
qDebug() << " valid: " << m_dataBase.isValid();
if (m_dataBase.open())
{
QStringList tableList = m_dataBase.tables(QSql::Tables);
qDebug() << "Database open.";
QSqlQuery query = m_dataBase.exec("SELECT * FROM PallolBoards");
qDebug() << "Found: " << query.size();
if (query.size() <= 0)
{
QSqlError err = query.lastError();
qDebug() << "Last error: " << err.text();
}
while (query.next())
{
QString title = query.value(0).toString();
qDebug() << "Query: " << title;
}
}
else
{
QMessageBox::critical(this,"Invalid database",m_dataBase.lastError().text());
}
すべての手がかりは?だからH:失敗しますが、D:成功します。
はい。正しいと迷惑な。また、私のコードは単純すぎた。まぁ.. – ExpatEgghead