使用 @db.Money
Optimize 提供建议,帮助您识别和解决因使用 @db.Money
类型而导致的性能问题。
以下模型使用了 @db.Money
原生类型
model Item {
// ...
price Decimal @db.Money
// ...
}
问题是什么?
PostgreSQL 中的 @db.Money
数据类型并非存储货币值的理想选择。在内部,@db.Money
实现为整数,这提供了速度,但缺乏灵活性。它以意外的方式处理小数部分和四舍五入,这可能导致不准确。
此外,@db.Money
类型不存储与关联货币有关的任何信息。相反,它依赖于全局 lc_monetary
区域设置,这可能不适用于所有用例。
有关更多信息,请参阅 PostgreSQL 文档。