我有一個QSqlDatabase:(我可以在MySQL Workbench中登錄的密碼和我使用的用戶名,所以我認爲他們是正確的)QSqlQueryModel不起作用
QSqlDatabase db = QSqlDatabase::addDatabase("QMYSQL");
db.setHostName("localhost");
db.setDatabaseName("something");
db.setUserName("username");
db.setPassword("password");
QSqlDatabase::database().open();
它返回true,所以打開成功。但接下來的代碼不起作用:
QSqlQueryModel* model = new QSqlQueryModel();
model->setQuery("select user_id, name, password, level from user where user_id = 'user' and password = 'password'");
現在model->rowCount
等於0(我不知道爲什麼)和
model->index(0, 0).data() == "username" &&
model->index(0, 2).data() == "password"
返回false。有人知道這裏可能是什麼問題嗎?
你確定你的'user'表不是空的嗎?你確定表中至少有一行'user_id'是*'user' *和'password'是*'password' *?嘗試在MySQL Workbench中執行你的查詢,看看它是否有結果。 。 。 – Mike