Перейти к содержанию

CLI

Интерфейс командной строки (Command line interface, CLI) Prisma предоставляет следующие основные возможности (команды):

init — создает шаблон Prisma-проекта:

  • --datasource-provider — провайдер для работы с БД: sqlite, postgresql, mysql, sqlserver или mongodb (перезаписывает datasource из schema.prisma);
  • --url — адрес БД (перезаписывает DATABASE_URL).
1
npx prisma init --datasource-provider mysql --url mysql://user:password@localhost:3306/mydb

generate — генерирует клиента Prisma на основе схемы (schema.prisma). Клиент Prisma предоставляет программный интерфейс приложения (Application Programming Interface, API) для работы с моделями и типы для TypeScript.

1
npx prisma generate

db pull — генерирует модели на основе существующей схемы БД.

1
npx prisma db pull

db push — синхронизирует состояние схемы Prisma с БД без выполнения миграций. БД создается при отсутствии. Используется для прототипировании БД и в локальной разработке. Также может быть полезной в случае ограниченного доступа к БД, например, при использовании БД, предоставляемой облачными провайдерами, такими как ElephantSQL или Heroku.

1
npx prisma db push

seed — выполняет скрипт для наполнения БД начальными (фиктивными) данными. Путь к соответствующему файлу определяется в package.json.

1
2
3
"prisma": {
    "seed": "node prisma/seed.js"
}
1
npx prisma seed

migrate

  • dev — выполняет миграцию для разработки:
  • --name — название миграции
1
npx prisma migrate dev --name init

Это приводит к созданию БД при ее отсутствии, генерации файла prisma/migrations/migration_name.sql, выполнению инструкции из этого файла (синхронизации БД со схемой) и генерации (регенерации) клиента (prisma generate).

Данная команда должна выполняться после каждого изменения схемы.

reset — удаляет и заново создает БД или выполняет "мягкий сброс", удаляя все данные, таблицы, индексы и другие артефакты

1
npx prisma migrate reset

deploy — выполняет производственную миграцию

1
npx prisma migrate deploy

studio — позволяет просматривать и управлять данными, хранящимися в БД, в интерактивном режиме:

  • --browser, -b — название браузера (по умолчанию используется дефолтный браузер);
  • --port, -p — номер порта (по умолчанию — 5555)
1
npx prisma studio

без автоматического открытия вкладки браузера

1
npx prisma studio -b none

Подробнее о CLI можно почитать здесь.

Комментарии