【问题标题】:how to insert all column header names into a list from qsqltablemodel table?如何将所有列标题名称插入 qsqltablemodel 表中的列表?
【发布时间】:2020-12-05 00:20:44
【问题描述】:

以下是我的数据库模型示例:

db = QSqlDatabase.addDatabase('QSQLITE')
db.setDatabaseName('book.db')
db.open()

self.model = QtSql.QSqlTableModel(self)
self.model.setTable("card")
self.model.select()

column_names = [ ]

如何将所有列标题名称从 qsqltablemodel 表中获取到列表中?

【问题讨论】:

    标签: python-3.x sqlite qsqltablemodel


    【解决方案1】:

    根据API文档(针对C++版本),可以使用record()函数获取空记录,用于提取字段名(reference):

    它返回一个空记录,只有字段名称。该函数可用于检索记录的字段名称。

    从记录中,我们可以得到字段的个数,然后在列表推导表达式中查询每个字段的名称:

    record = model.record()
    column_names = [ record.fieldName(i) for i in range(record.count()) ]
    

    【讨论】:

      猜你喜欢
      • 2020-12-03
      • 1970-01-01
      • 2020-12-04
      • 2018-08-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多