В модели переопредели функцию
flags.
Пример:
Qt::ItemFlags MyModel::flags(const QModelIndex &index) const
{
Qt::ItemFlags flags = QSqlQueryModel::flags(index);
if (index.column() == 5 || index.column() == 9 || index.column() == 10)
flags |= Qt::ItemIsEditable;
return flags;
}
Перечислены поля которые будут редактироватся.