Я использую ColdFusion 9.0.1 и SQL Server 2005.
Столбец в моей базе данных называется «Очки». Он настроен как числовой (6,1).
Когда я пишу запрос в SQL Server Management Studio для добавления значений, таких как 1.2 или 5.5, числа сохраняются правильно. Когда я падаю в 1,23, он округляется до 1,2. Когда я опускаюсь до 5,55, он округляется до 5,6. Это именно то, что я ожидаю.
UPDATE TableName
SET Points = 1.2
Когда я передаю свои значения в CFC и НЕ использую CFQUERYPARAM, я получаю точные результаты, как описано выше.
Когда я передаю свои значения в CFC с использованием CFQUERYPARAM, я не получаю то, что ожидаю. Когда я добавляю число вроде 1,2 или 5,5, значение округляется до 1,0 или 6,0.
UPDATE TableName
SET Points = <cfqueryparam type="CF_SQL_DECIMAL" value="#Points#">
Я изменил CFSQLTYPE на CF_SQL_NUMERIC и CF_SQL_DECIMAL. Тем не менее, я не могу получить числа для правильного сохранения.
Когда я запускаю запрос ниже в моем CFC, число сохраняется как 1.0.
UPDATE TableName
SET Points = <cfqueryparam type="CF_SQL_DECIMAL" value="1.23">
Можете ли вы помочь мне понять, почему это не так, как я ожидаю?