跳到主要内容

使用 TypeScript 和 PostgreSQL 连接你的数据库

要连接数据库,你需要将 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"
© . All rights reserved.