sql server中的decimal或者numeric的精度问题
程序员文章站
2022-05-16 22:00:17
...
在sql server中定义列的数据类型decimal时需要制定其精度和小数位数。
何谓精度:最多可以存储的十进制数字的总位数,包括小数点左边和右边的位数。该精度必须是从 1 到最大精度 38 之间的值。默认精度为 18。小数位数:小数点右边可以存储的十进制数字的最大位数。小数位数必须是从 0 到 p 之间的值。仅在指定精度后才可以指定小数位数。默认的小数位数为 0;因此,0 在c sharp中调用传递SqlParameter参数时也需要制定参数的精度和小数的位数,如下面的例子声明一个精度为18小树位数为2的decimal类型参数:
代码如下:
SqlParameter parm = new SqlParameter("@parmName", SqlDbType.Decimal);
parm.Precision = 18;
parm.Scale = 2;
推荐阅读
-
完美解决SQL server2005中插入汉字变成问号的问题
-
SQL Server中的SQL语句优化与效率问题
-
SQL Server 数据库调整表中列的顺序操作方法及遇到问题
-
sql server中的decimal或者numeric的精度问题
-
详解SQL Server中的事务与锁问题
-
在SQL Server数据库中执行存储过程很快,在c#中调用很慢的问题
-
关于SQL Server 2017中使用json传参时解析遇到的多层解析问题
-
SQL中的real、float、decimal、numeric数据类型区别
-
SQL Server 2008中SQL查询语句字段值不区分大小写的问题解决
-
SQL Server中修改“用户自定义表类型”问题的分析与方法