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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Oracle, ProxyModel и сортировка  (Прочитано 3484 раз)
mbb
Гость
« : Июнь 22, 2009, 09:35 »

При Select через SqlModel -> Proxy Model -> TableView столбцы с типом данных Number(3,0) в БД, например, "превращаются" в TableView в символьное представление и соответственно сортируются как строки, а не числа.
Не подскажете, кто виноват?
QT 4.5 MinGW  Win32
Записан
Barmaglodd
Гость
« Ответ #1 : Июнь 22, 2009, 10:26 »

Старый косяк.
http://www.qtsoftware.com/developer/task-tracker/index_html?method=entry&id=134135
http://www.qtsoftware.com/developer/task-tracker/index_html?method=entry&id=84822

Тут вменяемый ответ Улыбающийся
http://www.qtsoftware.com/developer/task-tracker/index_html?method=entry&id=109409

Мы давно отказались от QSql в пользу OTL+самописные модели, т.к. более гибкое решение.
Записан
mbb
Гость
« Ответ #2 : Июнь 22, 2009, 12:38 »

Спасибо.
А это точно QtSql? Подсунуть свою унаследованную SqlModel не получиться?
Записан
Barmaglodd
Гость
« Ответ #3 : Июнь 22, 2009, 13:29 »

Точно Улыбающийся

Тролли в комменте советуют смотреть через QSqlRecord::type реальный тип поля и приводить к нужному. Наверно, можно унаследоваться от QSqlQueryModel, и делать такие преобразования. Я сам такого не делал, т.ч. ничего конкретного сказать не могу.
Записан
mbb
Гость
« Ответ #4 : Июнь 22, 2009, 14:25 »

Я пытался сомтреть через record. И для varchar2 и для number(x,0) показывает QString. Более правдив typeID(). Он делает между ними разницу 1-для строки и 2-для числа. Но и только, посмотрел и отвали. Ладно, всё равно собирался "самомоделировать", попробую.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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