メインコンテンツにスキップ

@db.VarChar(n) の使用

Optimizeは、PostgreSQLで@db.VarChar(n)型を使用することによって引き起こされるパフォーマンス問題を特定し、解決するための推奨事項を提供します。

@db.VarChar(n) ネイティブ型が Item モデルの name フィールドで使用されています。

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

これが問題である理由

@db.VarChar(n) 型はコンテンツの最大長を n に制限するため、アプリケーションによって適切に管理されていない場合、本番環境で予期せぬ問題を引き起こす可能性があります。PostgreSQLでは、varchar(n)text と同じように動作し、varchar(n) に対して追加の最適化は提供されません。そのため、両者の選択はパフォーマンスよりも慣習の問題となります。

© . All rights reserved.