Search code examples
replacetransformrowsqsqltablemodel

How to replace rows with columns in QSqlTableModel?


I found a lot of answers how to transform rows into columns in SQL. But I need to transforms rows into columns in QSqlTableModel. As I understand it should not be a very difficult task but I can't find any idea of how to realize it. Perhaps data(), setData() and some other methods could be reimplemented, but I am afraid to miss something...

Or, maybe, some methods of QTableView should be reimplemented.


Solution

  • As I understand QIdentityProxyModel could be used to solve this problem. Unfortunately, QIdentityProxyModel is available since version 4.8.

    So I inherited QAbstractProxyModel and implemented mapToSource() and mapFromSource(), rowCount(), columnCount() and few more methods to switch rows with columns.