Как получить список записей в QCombo BOX из базы данных Sqlite3 в PYQT5 Python с использованием QSQL - PullRequest
0 голосов
/ 16 мая 2018

Я хочу получить список записей из таблицы базы данных.Это значения двух имен столбцов «id» и «lable», вставленных в базу данных.

INSERT INTO "phone_number_type" VALUES(1,'Home');
INSERT INTO "phone_number_type" VALUES(2,'Work');
INSERT INTO "phone_number_type" VALUES(3,'Mobile');
INSERT INTO "phone_number_type" VALUES(4,'Mistress');
INSERT INTO "phone_number_type" VALUES(5,'Meth Dealer');

Я хочу получить только имя столбца «lable» в QComboBox.вот мой код:

import sys
import sqlite3

from PyQt5 import QtSql
from PyQt5.QtSql import QSqlDatabase
from PyQt5.QtWidgets import QMainWindow, QApplication
from combobox import Ui_MainWindow


class fetchrec(QMainWindow, Ui_MainWindow):
    def __init__(self):
        QMainWindow.__init__(self)
        self.setupUi(self)
        db = QSqlDatabase.addDatabase("QSQLITE")
        db.setDatabaseName("ttest.db")
        self.model = QtSql.QSqlTableModel(self)
        self.model.setTable("phone_number_type")
        self.comboBox.setModelColumn(self.model.fieldIndex("lable"))
        self.comboBox.setModel(self.model)


if __name__ == "__main__":
    import sys

    app = QApplication(sys.argv)
    userins = fetchrec()
    userins.show()
    sys.exit(app.exec_())
...