Russian Qt Forum
Сентябрь 30, 2024, 12:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Две базы SQLite в одном QTableView  (Прочитано 2856 раз)
SibBear
Гость
« : Август 19, 2012, 22:09 »

Здравствуйте. Есть два (в дальнейшем м.б. больше) файла БД SQLite с одинаковой структурой на разных машинах. Нужно сделать программу со сводной таблицей, которая загружала бы их (базы) по локалке, с дальнейшим просмотром/распечаткой. Можно ли сделать запрос одновременно из обеих баз в QTableView + QSQLTableModel (QSqlQueryModel), не создавая еще одну базу?
Записан
Странник
Гость
« Ответ #1 : Август 19, 2012, 22:23 »

нет. вам нужно собирать данные с разных машин в одну модель вручную. либо написать свою модель, которая будет этим заниматься. как вариант - прокси-модель над N моделями.
Записан
LisandreL
Птица говорун
*****
Offline Offline

Сообщений: 984


Надо улыбаться


Просмотр профиля
« Ответ #2 : Август 20, 2012, 08:28 »

Можно через attach.

Есть 1.db и 2.db с одинаковыми таблицами:
Цитата: sql
CREATE TABLE [Test] (
  [ID] INTEGER PRIMARY KEY ON CONFLICT ROLLBACK,
  [Text] CHAR NOT NULL ON CONFLICT ROLLBACK);

Аттачим:
Цитата: sql
ATTACH DATABASE 'C:\Users\LCF\Desktop\2.db' AS 2;

Запрашиваем:
Цитата: sql
SELECT * FROM [Test] UNION ALL SELECT * FROM [2].[Test];
Записан
SibBear
Гость
« Ответ #3 : Август 20, 2012, 12:09 »

Благодарю.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.147 секунд. Запросов: 23.