Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL Server:Java中的更多小数位数数据_Java_Sql_Sql Server_Database_Jdbc - Fatal编程技术网

SQL Server:Java中的更多小数位数数据

SQL Server:Java中的更多小数位数数据,java,sql,sql-server,database,jdbc,Java,Sql,Sql Server,Database,Jdbc,我正在使用Java和JDBC从MS SQL Server导入数据。我数据库中的数据有两个小数位数 SQL Server中的MONEY数据类型具有四位精度,因此您看到的是预期的结果。如果您只需要两位数的精度,可以使用十进制 您的前端应该能够显示数据,但它希望显示数据。完全同意Tom H的解释。如果您希望在用户端格式化数据,可以使用DecimalFormat,或者更精确地说,因为它是货币,请尝试使用NumberFormat的货币实例 DecimalFormat df = new DecimalFor

我正在使用Java和JDBC从MS SQL Server导入数据。我数据库中的数据有两个小数位数

SQL Server中的
MONEY
数据类型具有四位精度,因此您看到的是预期的结果。如果您只需要两位数的精度,可以使用
十进制


您的前端应该能够显示数据,但它希望显示数据。

完全同意Tom H的解释。如果您希望在用户端格式化数据,可以使用DecimalFormat,或者更精确地说,因为它是货币,请尝试使用NumberFormat的货币实例

DecimalFormat df = new DecimalFormat("##.00");
String result = df.format(Double.parseDouble((data)));

NumberFormat nf = NumberFormat.getCurrencyInstance(Locale.US);
String result = nf.format(new BigDecimal(data));  

您应该根据需要更改区域设置。仅供参考,使用currency实例将从Locale返回带有相应货币符号的值。

我需要2个小数位数。但不是4:)您可以将值格式化为2位精度,例如使用
String.format()
。我只知道
String.format
printf()
结合使用。可能不相关,但您不应该使用
getString()
ResultSet
检索数字