2009-06-29 2 views
1

У меня есть таблица с двумя десятичными (18,0) полями.SQL Server Вставка десятичного числа, но выбор Int

Я вставляю в эту таблицу два десятичных значения. Например, 1,11

Когда я выбираю из таблицы (без слепков), я получаю 1.

Я теряю все Percision, и я понятия не имею, почему.

вставка в значения ИСПЫТАНИЙ (153, 'тест', 'тест', 1, 1, 1,11, 1,11)

Выберите * от TEST, и они являются 1 и 1 вместо 1.11,1.11

Есть идеи?

+0

wow Я чувствую себя как dufus. Спасибо – bladefist

ответ

7

Когда вы объявляете поле как десятичное (18,0), вы говорите, что после десятичной точки вы хотите получить 0 цифр точности. Вы захотите определить эти столбцы как десятичные (18,2) (или сколько бы цифр цифр вы не пожелали), чтобы поддерживать значение 1.11.

Обратитесь к MSDN page on decimal and numeric types за грустные детали.

0

Попробуйте изменить ввести десятичное (9,2)

0

Может попробовать создать столбцы в

десятичного (18,2)

1

Определить точность, DECIMAL каждый раз, когда еще он хранит только INT значения не десятичные Значения