我有几个表单字段,用户可以输入whole
个数字,decimal
个数字,这两个类型都可以是正数或负数。换句话说,他们可以输入这样的东西:
1 or 0.9 or 5.6745 or -10 or -0.9 or -10.5435
我想知道我应该在cfqueryparam
cfsqltype上使用什么?我尝试过十进制但看起来在ColdFusion 9中不支持。还有其他选项或我应该使用varchar
吗?
答案 0 :(得分:7)
使用与数据库中的列匹配的选项。通过选择正确的值,Coldfusion将尝试在将值发送到数据库驱动程序之前验证并格式化该值。
使用修复精度类型cf_sql_numeric
和cf_sql_decimal
,您还需要指定列接受的比例(小数位数)。默认情况下,比例为0,并且只存储整数。再次检查数据库中的比例。
对于cf_sql_float
等非精度类型,不应指定比例,并将完整值发送到数据库。
可以在Adobes docs.
中找到完整的数据类型列表