我試圖訪問MySQL在QT下的數據庫++。與QSqlTableModel篩選沒有結果
我有不同的表,並希望他們的輸出上QTableView
。
我使用QSqlTableModel
,偉大的工程,但只要我想篩選我遇到問題的結果..
這裏是我的源代碼的主要部分:
mModelContacts->setTable("contacts");
mModelContacts->select();
mUi->tableContacts->setModel(mModelContacts);
void MainWindow::on_submitContactsButton_clicked()
{
switch(mUi->comboBoxContacts->currentIndex())
{
case 0:
mModelContacts->setFilter("contacts_id = "+mUi->searchContactsLine->text());
break;
case 1:
mModelContacts->setFilter("contacts_firstName LIKE "+'%'+mUi->searchContactsLine->text()+'%');
break;
case 2:
mModelContacts->setFilter("contacts_lastName LIKE "+'%'+mUi->searchContactsLine->text()+'%');
break;
case 3:
mModelContacts->setFilter("contacts_city LIKE "+'%'+mUi->searchContactsLine->text()+'%');
break;
case 4:
mModelContacts->setFilter("contacts_phoneNumber LIKE "+'%'+mUi->searchContactsLine->text()+'%');
break;
}
mModelContacts->select();
mUi->tableContacts->setModel(mModelContacts);
}
1D濾波器(情況0)工作正常。但其他一切(名字,姓氏等)都沒有。我只是得到一個空表顯示。所以,我可以看到列名(因此,我認爲我的SQL語法是正確的),但沒有進入,不管是什麼我型英寸
有沒有在我的源代碼的錯誤呢?或者我怎樣才能使這個工作?
嘗試檢查你的查詢字符串qDebug(),例如qDebug()<< QString的( 「contacts_firstName LIKE」 + '%' + mUi-> searchContactsLine->文本()+ '%');並且張貼您的結果 – CppChris
@ChrisG謝謝你的提示:) –