返回

从Vercel到PlanetScale:解锁Serverless和数据库的无缝集成

开发工具

无缝连接PlanetScale数据库:Vercel Serverless和Prisma的强大结合

作为程序员、数据库爱好者或技术爱好者,欢迎来到我的技术博客。今天,我将开启一场激动人心的技术之旅,探索如何使用Vercel的Serverless功能和Prisma ORM框架,无缝连接PlanetScale托管数据库。做好准备,迎接一场代码和知识的盛宴吧!

Vercel Serverless:释放你的开发潜力

Vercel是一个云平台,让开发人员可以轻松地构建、部署和托管现代Web应用程序。其Serverless功能尤其令人兴奋,因为它允许开发人员在无服务器环境中运行代码,无需管理底层基础设施。

配置Serverless函数

要利用Vercel的Serverless功能,请按照以下步骤操作:

  1. 创建Vercel项目: 访问Vercel网站,创建一个新的项目,并选择Serverless选项。
  2. 安装依赖项: 在终端中,导航到项目目录并运行 npm install express pg 来安装必要的依赖项。
  3. 创建Serverless函数: 在项目目录中,创建一个名为 server.js 的新文件,并添加以下代码:
const express = require('express');
const pg = require('pg');

const app = express();

const pool = new pg.Pool({
  connectionString: process.env.DATABASE_URL,
  ssl: {
    rejectUnauthorized: false
  }
});

app.get('/products', async (req, res) => {
  const results = await pool.query('SELECT * FROM products');
  res.json(results.rows);
});

app.listen(3000, () => {
  console.log('Server listening on port 3000');
});

注意: 请确保在Vercel环境变量中设置 DATABASE_URL 环境变量,其中包含PlanetScale数据库的连接字符串。

PlanetScale:托管PostgreSQL数据库的强大选择

PlanetScale是一个托管的PostgreSQL数据库平台,提供了一个安全、可扩展且用户友好的数据库解决方案。它与Vercel应用程序的集成非常简单。

配置PlanetScale数据库

  1. 创建PlanetScale数据库: 访问PlanetScale网站,创建一个新的数据库,并选择一个计划。
  2. 获取连接字符串: 在PlanetScale控制台中,导航到你的数据库,单击“连接信息”选项卡,然后复制连接字符串。
  3. 设置Vercel环境变量: 将连接字符串粘贴到Vercel环境变量中,并将其命名为 DATABASE_URL

Prisma:与数据库交互的便捷途径

Prisma是一个开源的ORM(对象关系映射)框架,使开发人员能够轻松地与数据库交互。它支持多种数据库,包括PostgreSQL。

配置Prisma

  1. 安装Prisma: 在终端中,运行 npm install prisma
  2. 创建Prisma架构: 创建一个名为 schema.prisma 的新文件,并添加以下代码:
datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

generator client {
  provider = "prisma-client-js"
}

model Product {
  id        Int     @id @default(autoincrement())
  name      String
  price     Float
}

注意: 再次确保 DATABASE_URL 环境变量包含正确的PlanetScale连接字符串。

  1. 生成Prisma客户端: 运行 npx prisma generate 来生成Prisma客户端。
  2. 在Serverless函数中使用Prisma: 使用Prisma客户端查询数据库,例如:
const results = await pool.query('SELECT * FROM products');

部署你的应用程序

一切配置完成后,即可部署你的应用程序:

  1. 运行部署命令: 在终端中,运行 vercel deploy

结论

通过使用Vercel Serverless和Prisma,你已经成功地将你的应用程序无缝连接到PlanetScale数据库。Prisma提供了与数据库交互的简单方法,使你能够轻松地查询、创建、更新和删除数据。

常见问题解答

  1. 什么是Serverless函数?
    Serverless函数是在无服务器环境中执行的代码,无需管理底层基础设施。

  2. 如何设置PlanetScale数据库?
    创建一个PlanetScale数据库,获取连接字符串,并将其设置在Vercel环境变量中。

  3. 什么是Prisma?
    Prisma是一个ORM框架,使与数据库交互变得容易。

  4. 如何在Serverless函数中使用Prisma?
    生成Prisma客户端,并使用它来查询、创建、更新和删除数据。

  5. 如何部署我的应用程序?
    运行 vercel deploy 命令。