Название: Подключение к БД и вывод в TableView Отправлено: wildcat от Январь 31, 2012, 10:24 Здравствуйте.
Есть проблема. Имеется программа которая создает свою БД sqlete, как можно вывести данную БД в имеющийся TableView для дальнейшего ее редактирования. вот подключаюсь к БД. Код
все подключается, ошибок нет. А как вывести ее в TableView? Название: Re: Подключение к БД и вывод в TableView Отправлено: Пантер от Январь 31, 2012, 10:27 QSqlTableModel или QSqlQueryModel.
Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Январь 31, 2012, 15:45 Перечитал документацию QSqlTableModel и QSqlQueryModel.
Не могу разобраться, как отобразить существующую БД в созданом TableView. Есть у кого нибудь источник где можно это посмотреть? Название: Re: Подключение к БД и вывод в TableView Отправлено: Пантер от Январь 31, 2012, 15:49 Перечитал документацию QSqlTableModel и QSqlQueryModel. Не заметно. http://doc.qt.nokia.com/4.8-snapshot/sql-tablemodel.html - тут что не понятно?Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Январь 31, 2012, 16:44 для меня, это какой-то темный лес. Стараюсь его осветлить))
Мне там не понятно, где эта БД подключается, т.е. где там указывается путь к БД которую необходимо отобразить. Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 01, 2012, 12:11 Все получилось... Я не правильно указывал название таблицы SQL, по этому мне ничего не заполнялось данными. Теперь все заработало.
Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 01, 2012, 15:43 Не пойму почему, когда запускаю программу, таблица sql отображается и сразу исчезает. Не подскажете, что не так делаю?
Код
Название: Re: Подключение к БД и вывод в TableView Отправлено: Пантер от Февраль 01, 2012, 15:50 Ты создаешь модель на стеке и она уничтожается при выходе из области видимости. Создавай в куче.
Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 01, 2012, 16:10 спасибо, все исправил
Код
Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 01, 2012, 20:49 С отображением таблицы все разрешилось. Но проблема осталась. Дело в том что таблицы в SQL не совсем правильная, изменить ее там нельзя. Не подскажете, возможно изменить ее отображение в TableView'ре подобным обрзазом? Примеры таблиц во влажении.
Название: Re: Подключение к БД и вывод в TableView Отправлено: Пантер от Февраль 02, 2012, 07:24 Можно сделать вьюху в базе и ее открывать, а можно заюзать QSqlRelationalTableModel.
Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 02, 2012, 11:05 решил реализовать это с помощью нескольких запросов. Вот только не получается сделать сортировку.
Код
Хочу что бы получилось user к user, group к group. т.е сначала шли одни, потом другие. Название: Re: Подключение к БД и вывод в TableView Отправлено: Пантер от Февраль 02, 2012, 11:06 Дык в запросе и сортируй - ORDER BY.
Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 02, 2012, 11:47 Спасибо. Все сортируется.
Не подскажете, как можно реализовать, так что бы получилось: Пробовал QSqlRelationalTableModel, нашел примеры замены ключа и наследование комбобокса. Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 02, 2012, 15:01 Делаю два запроса.
Код
Получается 2ве таблицы вида во вложении. Первая таблица это название колонок, а вторая это данные. Можно из двух таблиц склеить одну? Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 03, 2012, 10:51 С ответами туго )) Может кому пригодится, только в новой таблице осталось заменить название колонок. Название колонок присваиваются из первого запроса:
Код
Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 03, 2012, 12:53 Можете подсказать как в tableWidget после его заполнения поменять столбцы местами?
Название: Re: Подключение к БД и вывод в TableView Отправлено: Пантер от Февраль 06, 2012, 09:32 Можете подсказать как в tableWidget после его заполнения поменять столбцы местами? void QHeaderView::moveSection ( int from, int to ) Название: Re: Подключение к БД и вывод в TableView Отправлено: wildcat от Февраль 09, 2012, 09:29 Спасибо.
Получается, что то вроде этого: Код
|