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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Бяда с датой  (Прочитано 3760 раз)
RVZ
Гость
« : Декабрь 01, 2010, 15:57 »

В общем тихий ужос!
стандартная модель QSqlRelationalTableModel со стандарным делегатом и стандартным мапером
в базе данных поля типа DateTime а на форме dateedit

QDataWidgetMapper *mapper = new QDataWidgetMapper();
mapper->setItemDelegate(new QSqlRelationalDelegate());

при попытки поменять дату выдает такое сообщение
QODBCResult::exec: Unable to execute statement: "[Microsoft][SQL Server Native Client 10.0]Datetime field overflow. Fractional second precision exceeds the scale specified in the parameter binding."
движок MS SQL 2005
Причем в первый раз при изменение дифолтного значения на пользовательское все проходит а вот в последующие ругается или вообще при изменении одной записи меняется а при изменении другой ругонь
Кто нибудь с подобным сталкивался?НепонимающийНепонимающий
Подскажите как вылечить
Зарание всем спасибо.
« Последнее редактирование: Декабрь 01, 2010, 16:02 от RVZ » Записан
crossly
Гость
« Ответ #1 : Декабрь 02, 2010, 00:16 »

http://bugreports.qt.nokia.com/browse/QTBUG-2192?actionOrder=desc
Записан
RVZ
Гость
« Ответ #2 : Декабрь 02, 2010, 11:06 »

Спасибо за ссылку
но что то я так и не понял как решить проблему.
Записан
crossly
Гость
« Ответ #3 : Декабрь 02, 2010, 14:34 »

берете исходники ODBC драйвера ... делаете вот это
Код:
So this issue might be fixed by simply changing in function QODBCResult::exec() the seventh Parameter from 0 to 6 (or 3):

case QVariant::DateTime: {

r = SQLBindParameter(d->hStmt,
i + 1,
qParamType[(QFlag)(bindValueType(i)) & QSql::InOut],
SQL_C_TIMESTAMP,
SQL_TIMESTAMP,
19,
6,
(void *) dt,
0,
*ind == SQL_NULL_DATA ? ind : NULL);
и пересобираете драйвер
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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