Преобразование SQL CREATE TABLE в Prisma схему
Преобразование операторов SQL CREATE TABLE в модели Prisma схемы.
Преобразование SQL CREATE TABLE в Prisma схему
Вставьте один или несколько операторов SQL CREATE TABLE, и этот инструмент вернет соответствующие модели Prisma схемы — с типами столбцов, первичными ключами, уникальными ограничениями и отношениями внешних ключей. Он разработан для разработчиков, переносящих существующую базу данных PostgreSQL, MySQL или SQLite в проект Prisma, или подключающих Prisma к схеме, которую кто-то другой разработал на чистом SQL.
Выберите исходную базу данных, чтобы типы столбцов сопоставлялись правильно — MySQL ENUM, UUID PostgreSQL или JSON столбец SQLite требуют разного обращения, и инструмент отмечает это встроенным примечанием, когда тип не имеет точного эквивалента Prisma. Включите именование в единственном числе PascalCase, чтобы получить идиоматические имена моделей (users становится User) с @@map обратно на реальную таблицу, и camelCase имена полей, чтобы получить идиоматические поля Prisma (full_name становится fullName) с @map обратно на реальный столбец — оба аддитивны, поэтому основную схему базы данных никогда не нужно менять. Внешние ключи, объявленные встроенно, как ограничение уровня таблицы или через отдельный ALTER TABLE, становятся надлежащими отношениями Prisma с обеих сторон, с дополнительным именованием отношения, если более одного внешнего ключа указывает на одну и ту же таблицу.
Значения по умолчанию также преобразуются: CURRENT_TIMESTAMP становится @default(now()), AUTO_INCREMENT и SERIAL становятся @default(autoincrement()), а ON UPDATE CURRENT_TIMESTAMP в MySQL становится @updatedAt. Столбцы, допускающие NULL, получают вопросительный знак в конце, составные ключи становятся @@id, а составные или одностолбцовые уникальные ограничения становятся @@unique или @unique в зависимости от области видимости. Все, что преобразователь не может представить точно — неподдерживаемый тип, ограничение CHECK, целое число без знака — вызывается с комментарием прямо над затронутым полем вместо молчаливого удаления или угадывания.
Все работает локально в вашем браузере: ваша схема никогда не загружается никуда, что важно, если она описывает производственную базу данных. Скопируйте результат, загрузите его как файл .txt для вставки в schema.prisma, или отправьте вывод прямо на вход другого инструмента, чтобы продолжить его уточнение.