java - Postgresql 金钱(或数字?)类型及其在 Scala (Java) 中的对应类型

标签 java postgresql scala playframework-2.2 anorm

我在 Scala 中有一个项目,它使用 Postresql。涉及到Postresql的type money。我做了一项研究,发现我应该避免在 Postgresql 中使用 money 数据类型,而最好使用 NUMERIC

此外,我还在客户端(在 Scala 中)使用 BigDecimal。但是由于错误我无法让它工作:

could not find implicit value for parameter extractor: anorm.Column[BigDecimal]
[error]     SqlParser.get[BigDecimal]("due_price") ~

所以问题是:

  1. 我应该在 PlayPostgresql 中使用什么数据类型?
  2. 如果其中之一是 BigDecimal,我该如何消除错误?

附言我知道 java.util.Currency,但我不需要它,我只需要 amount 的钱,应该是 BigDecimal.

最佳答案

使用整数类型以分为​​单位存储货币以避免舍入错误和削减一分钱是很常见的。您可以使用 Int、Long、BigInt - 任何您喜欢的。

关于java - Postgresql 金钱(或数字?)类型及其在 Scala (Java) 中的对应类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21204098/

相关文章:

mongodb - clusterSettings 不是 com.mongodb.MongoClientSettings.Builder 的成员

java - 使用 Gmail 和 Java 配置返回路径

java - 获取 GWT 中的当前区域设置

java - 慢速 Hibernate/C3P0 处理非慢速 Postgres SELECT

postgresql 13 gen_salt 不是函数

scala - 如何避免由于 akka actor 中的锁定超时而丢失消息?

java - HQL 左连接条件

ruby-on-rails - 将模型属性限制为 Rails 中的值列表的方法是什么?

postgresql - postgres 全文搜索

Scala 流评估