Привет! Вопрос такой:
Создается база в ACCESS. Одно поле имеет тип Yes/No (булевское), другое Number/Procent.
Подключаемся к базе с помощью строки
Driver={Microsoft Access Driver (*.mdb)};Dbq=C:\\Data\\gp_R6.mdb;Uid=;Pwd=;
Берутся таблицы, делается запрос по имени таблицы, берутся записи, все хорошо, кроме типа:
QSqlRecord rec = ...
QVariant::Type type = rec.field(i).type();
так вот тип QVariant::Type столбца с булевскими значениями QVariant::UInt вместо QVariant::Bool!
Тип процента вместо например QVariant::Double - QVariant::QString - отображается вместо 12% - 0.1200.
(Типы столбцов строка, целое, вещественное, дата/время правильные).
Мне нужно дальше работать с таблицей, задавать фильтры (при этом редактирование QVariant::Bool естественно должно выполняться с помощью checkbox).
"Старое" (не qt-шное) приложение, которое я переделываю, этот же файл читает нормально (с помощью
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Data\gp_R6.mdb;Persist Security Info=False)
Опиши, что ты используешь, QTableView или QTableWidget?
Использешь документ представление или нет, если нет, то почему.
Просто ты дал мало информации для точного не размытого ответа.
Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)