Вы можете установить псевдонимы имен столбцов, например, в QSqlTableModel:
model->setHeaderData(0, Qt::Horizontal, QObject::tr("ID"));
model->setHeaderData(1, Qt::Horizontal, QObject::tr("First name"));
model->setHeaderData(2, Qt::Horizontal, QObject::tr("Last name"));
Таким же образом вы можете получить псевдонимы имен столбцов, например, из QSqlTableModel:
QString columnName1 = model->headerData(0, Qt::Horizontal, Qt::DisplayRole).toString();
QString columnName2 = model->headerData(1, Qt::Horizontal, Qt::DisplayRole).toString();
QString columnName3 = model->headerData(2, Qt::Horizontal, Qt::DisplayRole).toString();
По умолчанию, если вы не установите псевдоним, имя столбца будет равно тому, что было прочитано из метаданных таблицы при инициализации вашей модели. Убедитесь, что ваш индекс раздела является допустимым индексом столбца. Обязательно укажите ориентацию по горизонтали для столбцов и по вертикали для строк.
Надеюсь, это поможет.