跳到主要内容

连接数据库

要连接到数据库,你需要将 Prisma schema 中 datasource 块的 url 字段设置为数据库的连接 URL

prisma/schema.prisma
datasource db {
provider = "postgresql"
url = env("DATABASE_URL")
}

在本例中,url 通过环境变量设置,该变量定义在 .env 文件中。

.env
DATABASE_URL="postgresql://johndoe:randompassword@localhost:5432/mydb?schema=public"
信息

我们建议将 .env 添加到你的 .gitignore 文件中,以防止提交环境变量。

现在你需要调整连接 URL,使其指向你自己的数据库。

数据库的连接 URL 格式取决于你使用的数据库。对于 PostgreSQL,它看起来如下所示(全部大写的部分是你的具体连接详细信息的占位符)。

postgresql://USER:PASSWORD@HOST:PORT/DATABASE?schema=SCHEMA

以下是对每个组成部分的简短说明

  • USER:你的数据库用户名
  • PASSWORD:你的数据库用户密码
  • HOST:你的主机名(对于本地环境,它是 localhost
  • PORT:数据库服务器运行的端口(PostgreSQL 通常是 5432
  • DATABASE数据库的名称
  • SCHEMA:数据库内schema的名称

如果你不确定 PostgreSQL 连接 URL 的 schema 参数应该填什么,通常可以省略它。在这种情况下,将使用默认的 schema 名称 public

例如,对于托管在 Heroku 上的 PostgreSQL 数据库,连接 URL 可能看起来像这样

.env
DATABASE_URL="postgresql://opnmyfngbknppm:XXX@ec2-46-137-91-216.eu-west-1.compute.amazonaws.com:5432/d50rgmkqi2ipus?schema=hello-prisma"

在 macOS 上本地运行 PostgreSQL 时,你的用户、密码以及数据库名称通常对应于你的操作系统当前用户,例如,假设用户名为 janedoe

.env
DATABASE_URL="postgresql://janedoe:janedoe@localhost:5432/janedoe?schema=hello-prisma"