在 Deno 项目中使用 PostgreSQL 数据库

Deno 是一个新兴的 JavaScript 运行时环境,它的设计目标是提供一种安全、可靠、高效的方式来运行 JavaScript 和 TypeScript 代码。与 Node.js 不同,Deno 内置了 TypeScript 支持,同时也没有 NPM 和 CommonJS 等旧有的设计,而是采用了 ES 模块系统。

在 Deno 项目中使用 PostgreSQL 数据库,可以通过 Deno 的第三方模块 deno-postgres 实现。本文将介绍如何在 Deno 项目中使用 PostgreSQL 数据库,并提供示例代码。

安装 deno-postgres

使用 deno-postgres,需要先安装相应的依赖。可以通过以下命令进行安装:

---- ------- ----------- ----------- ------------ -- ---------- -----------------------------------

其中,--allow-net--allow-env--allow-read 分别表示允许在 Deno 中进行网络请求、读取环境变量和读取文件系统。

连接 PostgreSQL 数据库

在使用 deno-postgres 连接 PostgreSQL 数据库之前,需要先创建一个数据库。可以使用以下命令创建一个名为 testdb 的数据库:

-------- ------

接下来,可以使用以下代码连接到数据库:

------ - ------ - ---- --------------------------------------

----- ------ - --- --------
  ----- -----------
  --------- ---------
  --------- ------------
  ----- -----
---

----- -----------------
---------------------- -- -----------

在上述代码中,Client 类是 deno-postgres 提供的一个类,用于连接 PostgreSQL 数据库。userdatabasehostnameport 参数分别表示数据库的用户名、数据库名、主机名和端口号。await client.connect() 表示连接到数据库,并打印一条连接成功的消息。

执行 SQL 查询

连接到数据库后,可以使用 client.query() 方法执行 SQL 查询。以下是一个简单的查询示例:

----- ------ - ----- -------------------- - ---- --------
-------------------------

在上述代码中,client.query() 方法接受一个 SQL 查询语句作为参数,并返回一个 Promise 对象。result.rows 表示查询结果的行数据。

插入数据

在插入数据之前,需要先创建一个表。以下是一个示例:

----- --------------
  ------ ----- -- --- ------ ----- -
    -- ------ ------- ----
    ---- ---- --- -----
    --- ------- --- ----
  -
---
-------------------- ------ --------

在上述代码中,await client.query() 方法接受一个 SQL 命令作为参数,用于创建一个名为 users 的表。SERIAL 表示自增长整数,PRIMARY KEY 表示主键,NOT NULL 表示不能为空。

接下来,可以使用以下代码向表中插入一条数据:

----- ------ - ----- -------------
  ------- ---- ----------- ---- ---------- --- --------- ---
  --------
  ---
--
----------------------------

在上述代码中,$1$2 分别表示第一个和第二个参数,用于避免 SQL 注入攻击。RETURNING * 表示返回插入的数据。

更新数据

以下是一个更新数据的示例:

----- ------ - ----- -------------
  ------- ----- --- --- - -- ----- ---- - -- --------- ---
  ---
  --------
--
----------------------------

在上述代码中,UPDATE 命令用于更新 users 表中 nameAlice 的数据的 age 字段。

删除数据

以下是一个删除数据的示例:

----- ------ - ----- -------------
  ------- ---- ----- ----- ---- - -- --------- ---
  --------
--
----------------------------

在上述代码中,DELETE 命令用于删除 users 表中 nameAlice 的数据。

断开连接

在完成数据库操作后,需要使用以下代码断开与数据库的连接:

----- -------------
------------------------- ---- -----------

总结

本文介绍了如何在 Deno 项目中使用 PostgreSQL 数据库,并提供了示例代码。deno-postgres 是一个功能强大的第三方模块,支持多种 PostgreSQL 版本,并提供了丰富的 API,可以满足不同场景下的使用需求。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/65fd3ad1d10417a22288fdcd