Преобразуется в десятичное число (38,12) в HQL - PullRequest
4 голосов
/ 25 апреля 2011

Я использую NHibernate с Active Record и пытаюсь суммировать столбец и возвращать результат. Столбец является десятичным (38,12). Однако, когда я делаю это, я получаю исключение SQL:

«Ошибка арифметического переполнения при преобразовании числового значения в числовой тип данных»

Я запустил профилировщик и вижу, что проблема в том, что генерируемый SQL-запрос использует десятичную (19,5).

Есть мысли о том, как обойти это? Я включил часть моего HQL ниже:

select new MyObject(
                        cast(sum(abs(oo.Total)) as decimal)
                        )
                        from OtherObject oo
...