Название: QSqlTableModel и метод setQuery QSqlQueryModel *q=dynamic_cast<QSqlQueryModel*> Отправлено: Max Payne от Апрель 05, 2012, 13:35 Задача сделать редактирование данных с разных таблиц в одном QTableView. Нашел как это делается через наследование :
Код: QSqlTableModel *model = new QSqlTableModel(this,dbSql); Модель работает если делать не большой запрос типа ("select Name, Id from data where Pol = 1") Но у меня сложный запрос типа Код: select Animals.Код_Породы, Animals.Код_Окраса,Animals.Пол,Animals.Кличка,Animals.Дата_рождения,Animals.Родословная,Animals.Отец_Кличка,Animals.Отец_Окрас,Animals.Мать_Кличка,Animals.Мать_Окрас, Заводчик.Заводчики,Владелец.Владелец, View.Expert_1,View.Expert_2, View.NClass_1,View.NClass_2, View.ZOc_1,View.ZOc_2 , View.Nom_Bis_1 , View.Nom_Bis_2, View.Present_1 ,View.Present_2 , View.WCF_Master, View.WCF_Ring, View.BreedShow, View.Paying, View.AddiNote, View.Selling, View.Titul_1,View.Title_1, View.Titul_2, View.Title_2 , View.NB_1, View.NB_2 from Animals, Заводчик,Владелец , View where Заводчик.ID_Breeder=Animals.ID_Breeder And Владелец.ID_owner=Animals.ID_Owner AND View.ID=(select ID from Data where Name='привт') And View.ID_Cat=Animals.ID_Cat And View.AddiList='true' и выборку корректно делает только по нескольким переменным (у меня это 10 колонок ), а дальше таблица забивается словом, которым определён хидер таблицы. Может кто то с этим сталкивался хелп. Заранее спасибо. Название: Re: QSqlTableModel и метод setQuery QSqlQueryModel *q=dynamic_cast<QSqlQueryModel*> Отправлено: Пантер от Апрель 06, 2012, 13:35 Так делать нельзя. Используй QSqlRelationalTableModel.
Название: Re: QSqlTableModel и метод setQuery QSqlQueryModel *q=dynamic_cast<QSqlQueryModel*> Отправлено: Max Payne от Апрель 08, 2012, 10:16 Но это модель тоже работает только с одной таблицей =/
Код: The QSqlRelationalTableModel class provides an editable data model for a single database table, with foreign key support Название: Re: QSqlTableModel и метод setQuery QSqlQueryModel *q=dynamic_cast<QSqlQueryModel*> Отправлено: Пантер от Апрель 09, 2012, 09:34 Тогда наследуйся от QSqlQueryModel и реализуй сам редактирование.
|