P粉8514014752023-08-19 00:03:48
2021 年 9 月の最新の知識更新によると、Prisma はスキーマ内のカスタム列タイプを直接サポートしていません。ただし、スキーマで「未加工」の SQL フィールドを使用することで、この制限を回避できます。これにより、特定のフィールドにカスタム SQL コードを記述して、Prisma がネイティブにサポートしていない列タイプを効果的に制御できるようになります。 あなたの場合、MySQL GEOMETRY タイプの列を追加したい場合は、Prisma スキーマで生の SQL フィールドを定義できます。これを行う方法の例を次に示します。 「」 モデル YourModel { id Int @id @default(autoincrement()) 名前文字列 geom String @map("geometry_column_name") @db.VarChar(255) //必要に応じて長さを調整します } 「」 この例では、カスタム SQL マッピングに `@map` を使用して、`geom` フィールドが `String` フィールドとして定義されています。 `@db.VarChar(255)` 属性は、データベース内の実際の列タイプ (この場合、長さ 255 の MySQL の VARCHAR) を指定するために使用されます。 `"geometry_column_name"` を、使用する実際の列名に置き換える必要があります。 このアプローチではカスタム列タイプを定義し、Prisma 管理の移行を使用できますが、Prisma のタイプセーフと検証の利点をすべて提供できるわけではないことに注意してください。さらに、Prisma の機能は前回の更新以降に変更されている可能性があるため、Prisma の公式ドキュメントまたは最新のリソースをチェックして、カスタム列タイプの処理に変更や改善があるかどうかを確認することをお勧めします。