我在 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") ~
所以问题是:
- 我应该在
Play
和Postgresql
中使用什么数据类型? - 如果其中之一是
BigDecimal
,我该如何消除错误?
附言我知道 java.util.Currency
,但我不需要它,我只需要 amount 的钱,应该是 BigDecimal
.
最佳答案
使用整数类型以分为单位存储货币以避免舍入错误和削减一分钱是很常见的。您可以使用 Int、Long、BigInt - 任何您喜欢的。
关于java - Postgresql 金钱(或数字?)类型及其在 Scala (Java) 中的对应类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21204098/