跳至主要内容

使用 @db.Char(n)

优化功能提供建议,以帮助您识别和解决由于在 PostgreSQL 中使用 @db.Char(n) 类型而引起的性能问题。

在以下示例中,@db.Char(n) 原生类型已在 Item 模型中的 name 字段上使用

model Item {
// ...
name String @db.Char(1)
// ...
}

为什么这是一个问题

@db.Char(n) 类型强制使用 n 的固定长度,如果应用程序没有正确管理,可能会在生产中引起意外问题。在 PostgreSQL 中,char(n) 会用空格填充较短的值,从而导致比较和其他操作期间出现问题。与某些优化 char(n) 的数据库不同,PostgreSQL 不提供此类优化,因此谨慎处理至关重要。