2017-01-02 7 views
0

Я попытался изменить таблицу с десятичной типа:Изменить табличное десятичное поле?

porog decimal(6,0) 

При изменении диапазона на (6, 4) и сохранить его, я снова (6,0). Зачем?

Теперь у меня есть поле decimal(15,14)

Когда я ввожу значение:

3,41557740625523

я получаю: 3.00000000000000

+0

Итак, как вы делаете это изменение? – RiggsFolly

+1

И просто примечание стороны: не 'decimal (6,0)' в основном целое число? – RiggsFolly

+0

Итак, я попытался сохранить номер с 14 номерами после комы, а целая часть - 0 000. Какой десятичный формат я должен использовать? – Dev

ответ

0

Я создал простую схему, чтобы проверить, что вы упомянули, но я не может воспроизвести ваши проблемы, связанные с потерей цифр после запятой. Может ли быть, что любой sql-клиент или запрос делает некоторое округление? Во всяком случае, посмотрите на схему, вставки и вывод. Может быть, это помогает и ответы по крайней мере на ваш вопрос о "Какой десятичном формате я должен использовать?":

create table test (
    yourfield decimal(15,14), 
    onlyaftercomma decimal(18,18) 
); 
insert into test (yourfield,onlyaftercomma) values 
    (3.41557740625523, 0.00041557740625523); 

Тогда ...

select * from test 

дает ...

yourfield  | onlyaftercomma 
3.41557740625523 | 0.00041557740625523 
Смежные вопросы