Relational databases

TypeScript
MySQL

Learn how to add Prisma to an existing Node.js or TypeScript project by connecting it to your database and generating a Prisma Client for database access. The following tutorial introduces you to the Prisma CLI, Prisma Client, and Prisma Introspection.


If you're migrating to Prisma from another ORM, see our Migrate from TypeORM or Migrate from Sequelize migration guides.


Prerequisites

In order to successfully complete this guide, you need:

  • an existing Node.js project with a package.json
  • Node.js installed on your machine
  • a PostgreSQL database server running and a database with at least one table
  • an existing Node.js project with a package.json
  • Node.js installed on your machine
  • a MySQL database server running and a database with at least one table
  • an existing Node.js project with a package.json
  • Node.js installed on your machine
  • a PlanetScale database server running and a database with at least one table
  • an existing Node.js project with a package.json
  • Node.js installed on your machine
  • a CockroachDB database server running and a database with at least one table

See System requirements for exact version requirements.

Make sure you have your database connection URL (that includes your authentication credentials) at hand! If you don't have a database server running and just want to explore Prisma, check out the Quickstart.

Set up Prisma

As a first step, navigate into your project directory that contains the package.json file.

Next, add the Prisma CLI as a development dependency to your project:

$npm install prisma --save-dev

You can now invoke the Prisma CLI by prefixing it with npx:

$npx prisma

See installation instructions to learn how to install Prisma using a different package manager.

Next, set up your Prisma project by creating your Prisma schema file template with the following command:

$npx prisma init

This command does two things:

  • creates a new directory called prisma that contains a file called schema.prisma, which contains the Prisma schema with your database connection variable and schema models
  • creates the .env file in the root directory of the project, which is used for defining environment variables (such as your database connection)
Edit this page on GitHub