создал 2 таблицы так
Читатели:
Код SQL
CREATE TABLE readers(
id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE,
id_book INTEGER,
age INTEGER,
FIO VARCHAR(10),
FOREIGN KEY(id_book) REFERENCES books(id)
);
Книги:
Код SQL
CREATE TABLE books(
id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE,
price INTEGER,
COUNT INTEGER,
title VARCHAR(10)
);
Потом такой код
QSqlRelationalTableModel* model = new QSqlRelationalTableModel(0);
model->setTable("readers");
model->setRelation(1,QSqlRelation("books", "id_book", "title")); //ASSERT тут ассерт.....
model->select();
model->setEditStrategy(QSqlTableModel::OnManualSubmit);
ui->tableView->setModel(model);
и тут ошибка
Запускается D:\projects\QT\TEST_DB-build-desktop\debug\TEST_DB.exe…
ASSERT: «idx >= 0 && idx < s» in file ..\..\include/QtCore/../../../../../../ndk_buildrepos/qt-desktop/src/corelib/tools/qvarlengtharray.h, line 107
D:\projects\QT\TEST_DB-build-desktop\debug\TEST_DB.exe за
Если убираю строку с setrelation — все отлично
Все просто — названия связанных полей должны быть одинаковы