SQL Server Вставка десятичной дроби, но выбрав Int - PullRequest
1 голос
/ 30 июня 2009

У меня есть таблица с двумя десятичными (18,0) полями.

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

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

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

вставить в значения TEST (153, «тест», «тест», 1, 1, 1.11, 1.11)

Выберите * из ТЕСТА, и они равны 1 и 1 вместо 1.11,1.11

Есть идеи?

Ответы [ 4 ]

7 голосов
/ 30 июня 2009

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

См. Стр. MSDN о десятичных и числовых типах для получения подробностей.

1 голос
/ 30 июня 2009

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

0 голосов
/ 30 июня 2009

Возможно, попробуйте создать столбцы как

десятичный (18,2)

0 голосов
/ 30 июня 2009

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

...