Тип данных моего столбца decimal(18,0), но когда я вводю значение в базу данных 2.3, оно меняется на 2.
decimal(18,0)
2.3
2
Для хранения этого значения поле должно иметь тип decimal(18,1)
decimal(18,1)
Проверить это:
SELECT CAST(2.3 as decimal(18,0)) SELECT CAST(2.3 as decimal(18,1))
decimal(18, 0) означает, что вы хотите создать десятичное поле, в котором будут храниться:
decimal(18, 0)
Это объясняет, почему 2.3 превращается в 2.Для получения дополнительной информации см. Документацию msdn для десятичного типа данных .