prisma2 установить длину и тип столбца в схеме призмы

Как я могу установить длину строки (varchar) для типа строки равной 50 и определить столбец как ТЕКСТ в схеме призмы, для пользовательской таблицы, которую я хочу name быть varchar(50) и bioбыть Текстовый столбец. Я создаю свои таблицы с помощью prisma migrate save и up.

model User {

  id        Int      @default(autoincrement()) @id
  email     String   @unique
  password  String
  name      String   ***** varchar 50****
  bio       String  *****TEXT ??

}

2 ответа

Следующая функция была недавно добавлена ​​в v2.17.0 . Вы можете указать типы базы данных в атрибутах скалярного поля, используя @db.за которым следует требуемый атрибут типа собственной базы данных, указанный Prisma. Для varcharиспользуйте для PostgreSQL следующее.

      model User {
  id        Int      @default(autoincrement()) @id
  email     String   @unique
  password  String
  name      String   @db.VarChar(50)
}

Дополнительные типы баз данных см. В документации Prisma Schema API .

@Griffin прав. Кроме того, ваш bioполе можно оставить как есть. Наборы Prisma String тип как собственная база данных textтипы по умолчанию (только PostgreSQL и SQLite). Вы также можете установить его явно независимо от базы данных:

      model User {
  id        Int      @default(autoincrement()) @id
  email     String   @unique
  password  String
  name      String   @db.VarChar(50)
  bio       String   @db.Text
}
Другие вопросы по тегам