# Prisma Documentation - Prisma ORM v6 (legacy) > Legacy Prisma ORM v6 documentation, maintained for backwards compatibility only. Prefer the current Prisma ORM section for new work. - [``client`: Add methods to Prisma Client`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions/client): Extend the functionality of Prisma Client, client component - [``model`: Add custom methods to your models`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions/model): Extend the functionality of Prisma Client, model component - [``query`: Create custom Prisma Client queries`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions/query): Extend the functionality of Prisma Client, query component - [``result`: Add custom fields and methods to query results`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions/result): Extend the functionality of Prisma Client, result component - [`About migration histories`](https://www.prisma.io/docs/orm/v6/prisma-migrate/understanding-prisma-migrate/migration-histories): About migration histories - [`About the shadow database`](https://www.prisma.io/docs/orm/v6/prisma-migrate/understanding-prisma-migrate/shadow-database): About the shadow database - [`Aggregation, grouping, and summarizing`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/aggregation-grouping-summarizing): Use Prisma Client to aggregate, group by, count, and select distinct. - [`Baselining a database`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/baselining): How to initialize a migration history for an existing database that contains important data. - [`Bundler issues`](https://www.prisma.io/docs/orm/v6/more/troubleshooting/bundler-issues): Solve ENOENT package error with vercel/pkg and other bundlers - [`Case sensitivity`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/case-sensitivity): How Prisma Client handles case sensitivity when filtering and sorting. - [`Caveats when deploying to AWS platforms`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/caveats-when-deploying-to-aws-platforms): Known caveats when deploying to an AWS platform - [`ChatGPT`](https://www.prisma.io/docs/orm/v6/more/ai-tools/chatgpt): Learn how to add the remote Prisma MCP server to ChatGPT to manage your Prisma Postgres databases. - [`Check constraints`](https://www.prisma.io/docs/orm/v6/more/troubleshooting/check-constraints): Learn how to configure CHECK constraints for data validation with Prisma ORM and PostgreSQL. - [`Cloudflare D1`](https://www.prisma.io/docs/orm/v6/overview/databases/cloudflare-d1): Guide to Cloudflare D1 - [`CockroachDB`](https://www.prisma.io/docs/orm/v6/overview/databases/cockroachdb): Guide to CockroachDB - [`Composite types`](https://www.prisma.io/docs/orm/v6/prisma-client/special-fields-and-types/composite-types): Learn about composite types in Prisma Client for MongoDB - [`Computed fields`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/computed-fields): This page explains how to use client extensions to add computed fields to Prisma models. - [`Configure Prisma Client with PgBouncer`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/databases-connections/pgbouncer): Configure Prisma Client with PgBouncer and other poolers: when to use pgbouncer=true, required transaction mode, prepared statements, and Prisma Migrate workarounds. - [`Configuring error formatting`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/error-formatting): This page explains how to configure the formatting of errors when using Prisma Client. - [`Connection management`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/databases-connections/connection-management): This page explains how database connections are handled with Prisma Client and how to manually connect and disconnect your database. - [`Connection pool`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/databases-connections/connection-pool): Prisma ORM's query engine creates a connection pool to store and manage database connections. - [`Connection URLs`](https://www.prisma.io/docs/orm/v6/reference/connection-urls): Learn about the format and syntax Prisma ORM uses for defining database connection URLs for PostgreSQL, MySQL and SQLite. - [`CRUD`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/crud): How to perform CRUD with Prisma Client. - [`Cursor`](https://www.prisma.io/docs/orm/v6/more/ai-tools/cursor): Learn tips and best practices for using Prisma ORM with the Cursor AI code editor. - [`Custom model and field names`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/custom-model-and-field-names): Learn how you can decouple the naming of Prisma models from database tables to improve the ergonomics of the generated Prisma Client API. - [`Custom models`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/custom-models): This page explains how to wrap Prisma Client in custom models - [`Custom validation`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/custom-validation): This page explains how to add custom validation to Prisma Client - [`Customizing migrations`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/customizing-migrations): How to edit a migration file before applying it to avoid data loss in production. - [`Data migrations`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/data-migration): How to migrate data using Prisma ORM with the expand and contract pattern. - [`Data modeling`](https://www.prisma.io/docs/orm/v6/overview/introduction/data-modeling): Learn how data modeling with Prisma differs from data modeling with SQL or ORMs. Prisma uses a declarative data modeling language to describe a database schema. - [`Data sources`](https://www.prisma.io/docs/orm/v6/prisma-schema/overview/data-sources): Data sources enable Prisma to connect to your database. This page explains how to configure data sources in your Prisma schema. - [`Database connections`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/databases-connections): Databases connections - [`Database drivers`](https://www.prisma.io/docs/orm/v6/overview/databases/database-drivers): Learn how Prisma connects to your database using the built-in drivers and how you can use Prisma along with other JavaScript database drivers using driver adapters (Preview) - [`Database features matrix`](https://www.prisma.io/docs/orm/v6/reference/database-features): Learn which database features are supported in Prisma ORM and how they map to the different Prisma ORM tools. - [`Database mapping`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/database-mapping): Database mapping in Prisma schema - [`Database polyfills`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/database-polyfills): Prisma Client provides features that are not achievable with relational databases. These features are referred to as "polyfills" and explained on this page. - [`Debugging`](https://www.prisma.io/docs/orm/v6/prisma-client/debugging-and-troubleshooting/debugging): This page explains how to enable debugging output for Prisma Client by setting the `DEBUG` environment variable. - [`Deploy migrations from a local environment`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/deploy-migrations-from-a-local-environment): Learn how to deploy Node.js and TypeScript applications that are using Prisma Client locally. - [`Deploy Prisma ORM`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/deploy-prisma): Learn more about the different deployment paradigms for Node.js applications and how they affect deploying an application using Prisma Client. - [`Deploy to a different OS`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/deploy-to-a-different-os): Learn how to deploy Node.js and TypeScript applications that are using Prisma Client to a different operating system. - [`Deploy to AWS Lambda`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/serverless/deploy-to-aws-lambda): Learn how to deploy your Prisma ORM-backed applications to AWS Lambda with AWS SAM, Serverless Framework, or SST - [`Deploy to Azure Functions`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/serverless/deploy-to-azure-functions): Learn how to deploy a Prisma Client based REST API to Azure Functions and connect to an Azure SQL database - [`Deploy to Cloudflare Workers & Pages`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/edge/deploy-to-cloudflare): Learn the things you need to know in order to deploy an app that uses Prisma Client for talking to a database to a Cloudflare Worker or to Cloudflare Pages. - [`Deploy to Deno Deploy`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/edge/deploy-to-deno-deploy): Learn how to deploy a TypeScript application to Deno Deploy. - [`Deploy to Fly.io`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/traditional/deploy-to-flyio): Learn how to deploy a Node.js server that uses Prisma ORM to Fly.io. - [`Deploy to Heroku`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/traditional/deploy-to-heroku): Learn how to deploy a Node.js server that uses Prisma ORM to Heroku. - [`Deploy to Koyeb`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/traditional/deploy-to-koyeb): Learn how to deploy a Node.js server that uses Prisma ORM to Koyeb Serverless Platform. - [`Deploy to Netlify`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/serverless/deploy-to-netlify): Learn how to deploy Node.js and TypeScript applications that are using Prisma Client to Netlify. - [`Deploy to Railway`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/traditional/deploy-to-railway): Learn how to deploy an app that uses Prisma ORM and Prisma Postgres to Railway. - [`Deploy to Render`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/traditional/deploy-to-render): Learn how to deploy a Node.js server that uses Prisma ORM to Render. - [`Deploy to Sevalla`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/traditional/deploy-to-sevalla): Learn how to deploy a Node.js server that uses Prisma ORM to Sevalla. - [`Deploy to Vercel`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/serverless/deploy-to-vercel): Learn how to deploy a Next.js application based on Prisma Client to Vercel. - [`Deploy to Vercel Edge Functions & Middleware`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/edge/deploy-to-vercel): Learn the things you need to know in order to deploy an Edge function that uses Prisma Client for talking to a database. - [`Deploying database changes with Prisma Migrate`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/deploy-database-changes-with-prisma-migrate): Learn how to deploy database changes with Prisma Migrate. - [`Deploying edge functions with Prisma ORM`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/edge/overview): Learn how to deploy your Prisma-backed apps to edge functions like Cloudflare Workers or Vercel Edge Functions - [`Development and production`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/development-and-production): Development and production - [`Drizzle`](https://www.prisma.io/docs/orm/v6/more/comparisons/prisma-and-drizzle): Learn how Prisma ORM compares to Drizzle. - [`Edge functions`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/edge): Learn how to deploy your Prisma ORM-backed apps to edge functions like Cloudflare Workers or Vercel Edge Functions - [`Editor setup`](https://www.prisma.io/docs/orm/v6/more/dev-environment/editor-setup): Learn how to configure your editor and IDEs for an optimal developer experience with Prisma ORM. - [`Engines`](https://www.prisma.io/docs/orm/v6/more/internals/engines): Prisma's query engine manages the communication with the database when using Prisma ORM. Learn how it works on this page. - [`Environment variables`](https://www.prisma.io/docs/orm/v6/more/dev-environment/environment-variables): Learn how to manage environment variables in your Prisma ORM project - [`Environment variables reference`](https://www.prisma.io/docs/orm/v6/reference/environment-variables-reference): This page gives an overview of all environment variables available for use. - [`Error message reference`](https://www.prisma.io/docs/orm/v6/reference/error-reference): Prisma Client, Migrate, Introspection error message reference - [`Excluding fields`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/excluding-fields): This page explains how to exclude sensitive fields from Prisma Client - [`Extensions`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions): Extend the functionality of Prisma Client - [`External tables`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/externally-managed-tables): How to declare and use externally managed tables in Prisma ORM - [`Fields & types`](https://www.prisma.io/docs/orm/v6/prisma-client/special-fields-and-types): Learn how to use about special fields and types with Prisma Client. - [`Filtering and Sorting`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/filtering-and-sorting): Use Prisma Client API to filter records by any combination of fields or related record fields, and/or sort query results. - [`Fine-Grained Authorization (Permit)`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions/shared-extensions/permit-rbac): Learn how to implement RBAC, ABAC, and ReBAC authorization in your Prisma applications - [`From v1`](https://www.prisma.io/docs/orm/v6/more/upgrades/from-v1): Upgrading your project from Prisma 1 to Prisma ORM 2 and later - [`Full-text search`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/full-text-search): This page explains how to search for text within a field. - [`Fullstack`](https://www.prisma.io/docs/orm/v6/overview/prisma-in-your-stack/fullstack): This page gives explains how to build fullstack applications with Prisma. It shows how Prisma fits in with fullstack frameworks and provides practical examples - [`Generating down migrations`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/generating-down-migrations): How to generate down migrations - [`Generating Prisma Client`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/generating-prisma-client): This page explains how to generate Prisma Client. It also provides additional context on the generated client, typical workflows and Node.js configuration. - [`Generators`](https://www.prisma.io/docs/orm/v6/prisma-schema/overview/generators): Generators in your Prisma schema specify what assets are generated when the `prisma generate` command is invoked. This page explains how to configure generators. - [`Getting started with Prisma Migrate`](https://www.prisma.io/docs/orm/v6/prisma-migrate/getting-started): Learn how to migrate your schema in a development environment using Prisma Migrate. - [`GitHub Copilot`](https://www.prisma.io/docs/orm/v6/more/ai-tools/github-copilot): Learn about the features available with GitHub Copilot and Prisma ORM, plus best practices and tips. - [`GraphQL`](https://www.prisma.io/docs/orm/v6/overview/prisma-in-your-stack/graphql): This page gives explains how to build GraphQL servers with Prisma ORM. It shows how Prisma ORM fits into the GraphQL ecosystem and provides practical examples. - [`GraphQL autocompletion`](https://www.prisma.io/docs/orm/v6/more/troubleshooting/graphql-autocompletion): Get autocompletion for Prisma Client queries in GraphQL resolvers with plain JavaScript - [`Handling exceptions and errors`](https://www.prisma.io/docs/orm/v6/prisma-client/debugging-and-troubleshooting/handling-exceptions-and-errors): This page covers how to handle exceptions and errors - [`How to use Prisma ORM's type system`](https://www.prisma.io/docs/orm/v6/prisma-client/type-safety/prisma-type-system): How to use Prisma ORM's type system - [`Indexes`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/indexes): How to configure index functionality and add full text indexes - [`Instantiating Prisma Client`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/instantiate-prisma-client): How to create and use an instance of PrismaClient in your app. - [`Integration testing`](https://www.prisma.io/docs/orm/v6/prisma-client/testing/integration-testing): Learn how to setup and run integration tests with Prisma and Docker - [`Introduction to Prisma Client`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/introduction): Learn how to set up Prisma Client. - [`Is Prisma ORM an ORM?`](https://www.prisma.io/docs/orm/v6/overview/prisma-in-your-stack/is-prisma-an-orm): Learn about how Prisma ORM implements the Data Mapper ORM pattern and how it achieves the same goal as traditional ORMs without requiring you to map classes to tables as traditional ORMs do. - [`Legacy Prisma Migrate`](https://www.prisma.io/docs/orm/v6/prisma-migrate/understanding-prisma-migrate/legacy-migrate): Legacy Prisma Migrate is a declarative data modeling and schema migration tool that is available via the Prisma CLI. - [`Limitations and known issues`](https://www.prisma.io/docs/orm/v6/prisma-migrate/understanding-prisma-migrate/limitations-and-known-issues): Learn about current limitations and known issues with Prisma Migrate, including database provider constraints and migration file compatibility. - [`Logging`](https://www.prisma.io/docs/orm/v6/prisma-client/observability-and-logging/logging): Learn how to configure Prisma Client to log the raw SQL queries it sends to the database and other information. - [`Many-to-many relations`](https://www.prisma.io/docs/orm/v6/more/troubleshooting/many-to-many-relations): Learn how to model, query, and convert many-to-many relations with Prisma ORM - [`Many-to-many relations`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations/many-to-many-relations): How to define and work with many-to-many relations in Prisma. - [`Mental model`](https://www.prisma.io/docs/orm/v6/prisma-migrate/understanding-prisma-migrate/mental-model): A mental model guide for working with Prisma Migrate in your project - [`Metrics`](https://www.prisma.io/docs/orm/v6/prisma-client/observability-and-logging/metrics): Diagnose application performance with insights into Prisma Client database activity. - [`Microsoft SQL Server`](https://www.prisma.io/docs/orm/v6/overview/databases/sql-server): This page explains how Prisma can connect to a Microsoft SQL Server database using the Microsoft SQL Server database connector. - [`Models`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/models): Learn about the concepts for building your data model with Prisma: Models, scalar types, enums, attributes, functions, IDs, default values and more. - [`Module bundlers`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/module-bundlers): This page gives an overview of the most important things to be aware of when using a module bundler to bundle an application that uses Prisma Client. - [`Mongoose`](https://www.prisma.io/docs/orm/v6/more/comparisons/prisma-and-mongoose): Learn how Prisma ORM compares to Mongoose. - [`Multi-schema`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/multi-schema): How to use Prisma ORM with multiple database schemas - [`MySQL/MariaDB`](https://www.prisma.io/docs/orm/v6/overview/databases/mysql): This page explains how Prisma can connect to a MySQL or MariaDB database using the MySQL database connector. - [`Native database functions`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/native-database-functions): How to enable PostgreSQL native database functions for projects that use Prisma Migrate. - [`Native database types`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/native-database-types): Native database types - [`Neon`](https://www.prisma.io/docs/orm/v6/overview/databases/neon): Learn how to use Prisma ORM with Neon serverless PostgreSQL - [`Next.js`](https://www.prisma.io/docs/orm/v6/more/troubleshooting/nextjs): Best practices and troubleshooting for using Prisma ORM with Next.js applications. - [`No Rust engine`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/no-rust-engine): Learn how to use Prisma ORM without Rust engines - [`Null and undefined`](https://www.prisma.io/docs/orm/v6/prisma-client/special-fields-and-types/null-and-undefined): How Prisma Client handles null and undefined - [`Nuxt`](https://www.prisma.io/docs/orm/v6/more/troubleshooting/nuxt): Learn how to integrate Prisma ORM with your Nuxt application. - [`Older versions`](https://www.prisma.io/docs/orm/v6/more/upgrades/older-versions): Upgrade guides for Prisma ORM versions 3, 4, 5, and 6 - [`One-to-many relations`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations/one-to-many-relations): How to define and work with one-to-many relations in Prisma. - [`One-to-one relations`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations/one-to-one-relations): How to define and work with one-to-one relations in Prisma. - [`OpenTelemetry tracing`](https://www.prisma.io/docs/orm/v6/prisma-client/observability-and-logging/opentelemetry-tracing): Diagnose application performance with detailed traces of each query. - [`Operating against partial structures of your model types`](https://www.prisma.io/docs/orm/v6/prisma-client/type-safety/operating-against-partial-structures-of-model-types): This page documents various scenarios for using the generated types from the Prisma namespace - [`ORM releases and maturity levels`](https://www.prisma.io/docs/orm/v6/more/releases): Learn about the release process, versioning, and maturity of Prisma ORM components and how to deal with breaking changes that might happen throughout releases. - [`Overview on Prisma Migrate`](https://www.prisma.io/docs/orm/v6/prisma-migrate/understanding-prisma-migrate/overview): Learn everything you need to know about Prisma Migrate. - [`Overview on Prisma Schema`](https://www.prisma.io/docs/orm/v6/prisma-schema/overview): The Prisma schema is the main method of configuration when using Prisma. It is typically called schema.prisma and contains your database connection and data model. - [`Pagination`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/pagination): Prisma Client supports both offset pagination and cursor-based pagination. Learn more about the pros and cons of different pagination approaches and how to implement them. - [`Patching & hotfixing`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/patching-and-hotfixing): How to reconcile the migration history after applying a hotfix or patch to a production environment. - [`PlanetScale`](https://www.prisma.io/docs/orm/v6/overview/databases/planetscale): Guide to PlanetScale - [`PostgreSQL`](https://www.prisma.io/docs/orm/v6/overview/databases/postgresql): This page explains how Prisma can connect to a PostgreSQL database using the PostgreSQL database connector. - [`PostgreSQL extensions`](https://www.prisma.io/docs/orm/v6/prisma-schema/postgresql-extensions): How to install and manage PostgreSQL extensions with Prisma ORM using customized migrations, and how to use them in Prisma Client. - [`Preview features`](https://www.prisma.io/docs/orm/v6/more/upgrades/preview-features): Upgrading your project to use a Preview feature. - [`Preview features`](https://www.prisma.io/docs/orm/v6/reference/preview-features): Previews are typically available behind a feature flag or require some form of opt-in. - [`Prisma CLI`](https://www.prisma.io/docs/orm/v6/tools/prisma-cli): The Prisma command line interface (CLI) is the primary way to interact with your Prisma project from the command line. - [`Prisma CLI Preview features`](https://www.prisma.io/docs/orm/v6/reference/preview-features/cli-preview-features): Prisma CLI features that are currently in Preview. - [`Prisma CLI reference`](https://www.prisma.io/docs/orm/v6/reference/prisma-cli-reference): This page gives an overview of all available Prisma CLI commands, explains their options and shows numerous usage examples. - [`Prisma Client & Prisma schema`](https://www.prisma.io/docs/orm/v6/reference/preview-features/client-preview-features): Prisma Client and Prisma schema features that are currently in Preview. - [`Prisma Client API reference`](https://www.prisma.io/docs/orm/v6/reference/prisma-client-reference): API reference documentation for Prisma Client. - [`Prisma Config reference`](https://www.prisma.io/docs/orm/v6/reference/prisma-config-reference): This page gives an overview of all Prisma config options available for use. - [`Prisma Error Reference`](https://www.prisma.io/docs/orm/v6/reference/errors): Common Prisma ORM errors and how to troubleshoot them. - [`Prisma ORM`](https://www.prisma.io/docs/orm/v6): Learn about Prisma ORM - [`Prisma ORM MongoDB database connector`](https://www.prisma.io/docs/orm/v6/overview/databases/mongodb): How Prisma can connect to a MongoDB database using the MongoDB database connector. - [`Prisma schema reference`](https://www.prisma.io/docs/orm/v6/reference/prisma-schema-reference): API reference documentation for the Prisma Schema Language (PSL). - [`Prisma Studio`](https://www.prisma.io/docs/orm/v6/tools/prisma-studio): Prisma Studio is a visual database editor. - [`Prisma validator`](https://www.prisma.io/docs/orm/v6/prisma-client/type-safety/prisma-validator): The Prisma validator is a utility function that takes a generated type and returns a type-safe object which adheres to the generated types model fields. - [`Prototyping your schema`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/prototyping-your-schema): Prototyping your schema - [`Query optimization`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/query-optimization-performance): How to identify and optimize query performance with Prisma - [`Raw queries`](https://www.prisma.io/docs/orm/v6/prisma-client/using-raw-sql/raw-queries): Learn how you can send raw SQL and MongoDB queries to your database using the raw() methods from the Prisma Client API. - [`Raw SQL comparisons`](https://www.prisma.io/docs/orm/v6/more/troubleshooting/raw-sql-comparisons): Compare columns of the same table with raw queries in Prisma ORM - [`Read replicas`](https://www.prisma.io/docs/orm/v6/prisma-client/setup-and-configuration/read-replicas): Learn how to set up and use read replicas with Prisma Client - [`Referential actions`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations/referential-actions): Referential actions let you define the update and delete behavior of related models on the database level - [`Relation mode`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations/relation-mode): Manage relations between records with relation modes in Prisma - [`Relation queries`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/relation-queries): Prisma Client provides convenient queries for working with relations, such as a fluent API, nested writes (transactions), nested reads and relation filters. - [`Relations`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations): A relation is a connection between two models in the Prisma schema. This page explains how you can define one-to-one, one-to-many and many-to-many relations in Prisma. - [`REST`](https://www.prisma.io/docs/orm/v6/overview/prisma-in-your-stack/rest): This page gives an overview of the most important things when building REST APIs with Prisma. It shows practical examples and the supported libraries. - [`SafeQL & Prisma Client`](https://www.prisma.io/docs/orm/v6/prisma-client/using-raw-sql/safeql): Learn how to use SafeQL and Prisma Client extensions to work around features not natively supported by Prisma, such as PostGIS. - [`Schema location`](https://www.prisma.io/docs/orm/v6/prisma-schema/overview/location): Documentation regarding proper location of Prisma Schema including default naming and multiple files. - [`Seeding`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/seeding): Learn how to seed your database using Prisma ORM's integrated seeding functionality and Prisma Client - [`Select fields`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/select-fields): This page explains how to select only a subset of a model's fields and/or include relations ("eager loading") in a Prisma Client query. - [`Self-relations`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations/self-relations): How to define and work with self-relations in Prisma. - [`Sequelize`](https://www.prisma.io/docs/orm/v6/more/comparisons/prisma-and-sequelize): Learn how Prisma ORM compares to Sequelize. - [`Serverless functions`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/serverless): Learn how to deploy your Prisma ORM-backed apps to FaaS providers like AWS Lambda, Netlify, or Vercel Serverless Functions - [`Shared packages & examples`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions/extension-examples): Explore the Prisma Client extensions that have been built by Prisma and its community - [`Shared Prisma Client extensions`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions/shared-extensions): Share extensions or import shared extensions into your Prisma project - [`Should you use Prisma ORM?`](https://www.prisma.io/docs/orm/v6/overview/introduction/should-you-use-prisma): Prisma ORM is a new kind of ORM. This page explains when Prisma ORM would be a good fit, and provides alternatives for other scenarios. - [`Special rules for referential actions in SQL Server and MongoDB`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations/referential-actions/special-rules-for-referential-actions): Circular references or multiple cascade paths can cause validation errors on Microsoft SQL Server and MongoDB. Since the database does not handle these situations out of the box, learn how to solve this problem. - [`SQL comments`](https://www.prisma.io/docs/orm/v6/prisma-client/observability-and-logging/sql-comments): Add metadata to your SQL queries as comments for improved observability, debugging, and tracing. - [`SQL Server on Docker`](https://www.prisma.io/docs/orm/v6/overview/databases/sql-server/sql-server-docker): Download and use the Microsoft SQL Server Docker image. - [`SQL Server on Windows (local)`](https://www.prisma.io/docs/orm/v6/overview/databases/sql-server/sql-server-local): Set up and configure SQL Server on Windows. - [`SQLite`](https://www.prisma.io/docs/orm/v6/overview/databases/sqlite): This page explains how Prisma can connect to a SQLite database using the SQLite database connector. - [`Squashing migrations`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/squashing-migrations): How to squash multiple migration files into a single migration - [`Supabase`](https://www.prisma.io/docs/orm/v6/overview/databases/supabase): Learn how to use Prisma ORM with Supabase PostgreSQL - [`Supported databases`](https://www.prisma.io/docs/orm/v6/reference/supported-databases): This page lists all the databases and their versions that are supported by Prisma ORM. - [`System requirements`](https://www.prisma.io/docs/orm/v6/reference/system-requirements): System requirements for running Prisma ORM - [`Table inheritance`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/table-inheritance): Learn about the use cases and patterns for table inheritance in Prisma ORM that enable usage of union types or polymorphic structures in your application. - [`Tabnine`](https://www.prisma.io/docs/orm/v6/more/ai-tools/tabnine): Learn tips and best practices for using Prisma ORM with the Tabnine AI code editor. - [`Team development`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/team-development): How to use Prisma Migrate when collaborating on a project as a team. - [`Testing`](https://www.prisma.io/docs/orm/v6/prisma-client/testing): How to implement unit and integration testing with Prisma ORM - [`To v7`](https://www.prisma.io/docs/orm/v6/more/upgrades/to-v7): Guide on how to upgrade to Prisma ORM 7 - [`Traditional servers`](https://www.prisma.io/docs/orm/v6/prisma-client/deployment/traditional): Learn how to deploy your Prisma-backed apps to PaaS providers like Heroku, Koyeb, or AWS EC2 - [`Transactions and batch queries`](https://www.prisma.io/docs/orm/v6/prisma-client/queries/transactions): This page explains the transactions API of Prisma Client. - [`Troubleshooting`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/troubleshooting): Troubleshooting issues with Prisma Migrate in a development environment. - [`Troubleshooting binary size and deployment issues`](https://www.prisma.io/docs/orm/v6/prisma-client/debugging-and-troubleshooting/troubleshooting-binary-size-issues): This page covers how to resolve large bundle sizes, slow builds, and deployment errors caused by Prisma ORM Rust engine binaries - [`Troubleshooting relations`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/relations/troubleshooting-relations): Common problems and solutions when defining relations in the Prisma schema, including self-relations and implicit many-to-many relations. - [`Turso`](https://www.prisma.io/docs/orm/v6/overview/databases/turso): Learn how to use Prisma ORM with Turso SQLite - [`Type safety`](https://www.prisma.io/docs/orm/v6/prisma-client/type-safety): Prisma Client provides full type safety for queries, even for partial queries or included relations. This page explains how to leverage the generated types and utilities. - [`Type utilities`](https://www.prisma.io/docs/orm/v6/prisma-client/client-extensions/type-utilities): Advanced type safety: improve type safety in your custom model methods - [`TypedSQL`](https://www.prisma.io/docs/orm/v6/prisma-client/using-raw-sql/typedsql): Learn how to use TypedSQL to write fully type-safe SQL queries that are compatible with any SQL console and Prisma Client. - [`TypeORM`](https://www.prisma.io/docs/orm/v6/more/comparisons/prisma-and-typeorm): Learn how Prisma compares to TypeORM. - [`TypeScript performance`](https://www.prisma.io/docs/orm/v6/more/troubleshooting/typescript-performance): Optimize TypeScript compilation performance when working with large Prisma schemas - [`Unit testing`](https://www.prisma.io/docs/orm/v6/prisma-client/testing/unit-testing): Learn how to setup and run unit tests with Prisma Client - [`Unsupported database features (Prisma Migrate)`](https://www.prisma.io/docs/orm/v6/prisma-migrate/workflows/unsupported-database-features): How to include unsupported database features for projects that use Prisma Migrate. - [`Unsupported database features (Prisma Schema)`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/unsupported-database-features): How to support database features that do not have an equivalent syntax in Prisma Schema Language. - [`Views`](https://www.prisma.io/docs/orm/v6/prisma-schema/data-model/views): How to include views in your Prisma schema - [`What is introspection?`](https://www.prisma.io/docs/orm/v6/prisma-schema/introspection): Learn how you can introspect your database to generate a data model into your Prisma schema. - [`What is Prisma ORM?`](https://www.prisma.io/docs/orm/v6/overview/introduction/what-is-prisma): This page gives a high-level overview of what Prisma ORM is and how it works. It's a great starting point for Prisma newcomers! - [`Why Prisma ORM?`](https://www.prisma.io/docs/orm/v6/overview/introduction/why-prisma): Learn about the motivation for Prisma ORM and how it compares to other Node.js and TypeScript database tools like ORMs and SQL query builders. - [`Windsurf`](https://www.prisma.io/docs/orm/v6/more/ai-tools/windsurf): Learn tips and best practices for using Prisma ORM with the Windsurf AI code editor. - [`Working with compound IDs and unique constraints`](https://www.prisma.io/docs/orm/v6/prisma-client/special-fields-and-types/working-with-composite-ids-and-constraints): How to read, write, and filter by compound IDs and unique constraints. - [`Working with Json fields`](https://www.prisma.io/docs/orm/v6/prisma-client/special-fields-and-types/working-with-json-fields): How to read, write, and filter by Json fields. - [`Working with scalar lists`](https://www.prisma.io/docs/orm/v6/prisma-client/special-fields-and-types/working-with-scalar-lists-arrays): How to read, write, and filter by scalar lists / arrays. - [`Write your own SQL`](https://www.prisma.io/docs/orm/v6/prisma-client/using-raw-sql): Learn how to use raw SQL queries in Prisma Client.