npm 包 knorm-postgres 使用教程

简介

Knorm 是一个基于 TypeScript 的 ORM(Object-relational mapping,对象关系映射)库,能够与多种关系型数据库进行交互,其中 knorm-postgres 能够与 PostgreSQL 数据库进行交互。本篇文章主要介绍如何使用 npm 包 knorm-postgres。

安装

在项目目录下使用以下命令安装 knorm-postgres:

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

连接数据库

在使用 knorm-postgres 与 PostgreSQL 数据库交互前,需要先连接数据库。

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

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

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

这里使用 PostgresConnector 对象连接到 PostgreSQL 数据库,并将其配置信息传递给初始化的 Database 对象。在配置信息中,我们需要指定连接的主机名、端口号、用户名、密码以及连接的数据库名。如果 PostgreSQL 服务器需要通过 SSL 进行保护,则需要设置 ssl 选项为 true。

创建模型

现在我们已经完成了与 PostgreSQL 数据库的连接,接下来需要定义模型,并将其映射到数据库中。

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

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

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

在上面的代码中,我们定义了一个数据库表 users,包含 id、name、age、createdAt 和 updatedAt 字段。其中,id 字段被指定为主键,类型为整数。其余的字段类型分别为字符串、整数和日期类型。这些字段将用于创建和更新数据库中的记录。

插入数据

我们可以按如下方式将数据插入到用户表中:

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

这里,我们实例化了 User 对象,并传入包含想要插入数据库中的数据的对象。

save() 方法将会在连接到的数据库中执行 INSERT 语句,并将对象中的属性映射到表中的相应字段。

此外,我们还可以使用 create 方法一次性创建并插入一条数据:

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

查询数据

查询数据库时我们可以使用模型的 query 方法进行查询。

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

这里,我们调用了 User 模型的 query 方法创建查询对象,并使用 where 子句来指定筛选条件。在执行查询语句时,query() 方法将返回一个可迭代的对象,我们可以在 for 循环中遍历它来获取查询结果。

另外,我们还可以添加 order_by()、group_by() 和 limit() 等子句来进行排序、分组和限制查询结果数量。

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

更新数据

现在假设我们需要将 previously created 的用户“Zhangsan”的年龄更新为 23。

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

这里,我们使用查询语句查找 name 为张三的用户。然后我们将该用户的 age 属性更新为 23,并保存到数据库中。

删除数据

要删除一条已存在的数据,我们可以使用 delete() 方法:

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

这将会执行与模型实例相关联的 DELETE 语句,从数据库中删除记录。

结论

上述是 npm 包 knorm-postgres 的使用教程。使用 knorm-postgres 能够在 TypeScript 项目中简化连接和交互 PostgreSQL 数据库流程,大幅简化编写和维护代码的工作量。啊😇,希望这篇文章能够帮助你更好地使用 knorm-postgres。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/60055eb581e8991b448dc603


猜你喜欢

  • npm 包 weextool 使用教程

    weextool 是一个开源的 npm 包,它提供了一系列的命令行工具,让开发者能够更轻松地使用 Weex 框架进行开发。本文将详细介绍 weextool 的使用方法,以及它的学习和指导意义。

    2 年前
  • npm 包 third-party-licenses-generator 使用教程

    如果你是一名前端程序员,那么你一定会使用很多第三方库来帮助你完成工作。这些第三方库可能包括 jQuery、Vue、React 等等。但是,你可能没有注意到,你使用的每一个第三方库都有自己的许可证。

    2 年前
  • npm 包 react-native-slideshow 使用教程

    本文将为大家详细介绍如何使用 npm 包 react-native-slideshow 来制作轮播图。 简介 react-native-slideshow 是一款轻量级、易于使用的 React N...

    2 年前
  • npm 包 kd-facebook-ads-sdk 使用教程

    在进行 Facebook 广告投放时,可以使用 Facebook Ads API 与 Facebook 进行交互。kd-facebook-ads-sdk 是一个基于 Facebook Ads API ...

    2 年前
  • npm 包 @oott123/grpc_tools_node_protoc_ts 使用教程

    1. 什么是 npm 包 @oott123/grpc_tools_node_protoc_ts @oott123/grpc_tools_node_protoc_ts 是一个 Node.js 的插件包,...

    2 年前
  • npm 包 opsart-angular-social 使用教程

    作为前端开发者,我们经常需要使用各种第三方库和包来提高我们的开发效率和代码质量。其中一个非常实用的包就是 opsart-angular-social,它可以帮助我们快速实现社交分享和登录的功能。

    2 年前
  • npm 包 kd-react-facebook-login 使用教程

    什么是 npm? npm 是 Node.js 包管理器,可以让开发者方便地安装、分享和管理代码包。前端开发中很多的库、框架和工具都是以 npm 包的形式存在。 kd-react-facebook-lo...

    2 年前
  • npm 包 foop 使用教程

    在前端开发中,使用合适的工具和库能够有效提升开发效率和代码质量。npm 是前端开发使用最广泛的包管理器之一,提供了大量的开源的前端工具和库。其中,foop 是一个受欢迎的 npm 包,本文将详细介绍它...

    2 年前
  • npm 包 dili 使用教程

    前言 在前端开发中,我们经常需要用到地图相关的工具。如果从零开始实现地图功能,会非常耗时耗力,因此我们可以使用一些已有的工具来快速地实现地图功能。dili 就是一个可以帮助我们快速实现地图功能的 np...

    2 年前
  • npm 包 apidocjs-markdown 使用教程

    当我们开发完一个 API 时,为了让更多人能够快速了解其功能和使用方式,我们通常会提供一份 API 文档。接下来,我们将介绍一款方便易用的 npm 包 -- apidocjs-markdown,是通过...

    2 年前
  • npm包rework-import-external使用教程

    在前端开发中,经常会出现需要引入外部CSS文件的情况,而使用@import语句引入外部CSS文件,则会增加多个HTTP请求抬头。为了避免这种情况,我们可以使用npm包rework-import-ext...

    2 年前
  • npm 包 jquery-coolautosuggest 使用教程

    简介 jquery-coolautosuggest 是一款基于 jQuery 的自动补全插件,可用于搜索或输入框的提示。它具有以下功能特点: 可以从本地或远程源获取数据 支持自定义样式和主题 可以实...

    2 年前
  • npm 包 queue-op 使用教程

    Node.js 中的模块系统是基于 npm 包的,npm 包是一个非常重要的前端技术,它可以帮助我们管理第三方模块的安装和更新,并提供了一个庞大的社区支持,使得我们可以快速解决问题和获取支持。

    2 年前
  • npm 包 @floydspace/ngx-validation 使用教程

    @floydspace/ngx-validation 是一个 Angular 的表单验证库,它可以帮助我们快速构建有效的 Angular 表单,并提供了多种表单验证器来确保表单中的数据正确性。

    2 年前
  • npm 包 geojson-to-gml-2 使用教程

    介绍 GeoJSON 是一种常用的地理信息数据格式,而 GML(Geography Markup Language)则是一种将地理信息存储为 XML 的标记语言。而 geojson-to-gml-2 ...

    2 年前
  • npm 包 owl-parser 使用教程

    本文将介绍 owl-parser 这个 npm 包的使用方法。我们将探讨如何通过该包轻松解析和操作 Owl 格式的本体文件。在学习本文之前,您需要掌握 JavaScript 和 Node.js 的相关...

    2 年前
  • npm 包 materialize-vue 使用教程

    介绍 materialize-vue 是一个基于 Vue.js 框架的 Material Design 风格 UI 组件库,其实现了 Material Design 的许多组件和样式,方便前端开发者使...

    2 年前
  • npm 包 insight-gulden-ui 使用教程

    前言 前端开发的优势之一就是有大量的第三方包和库可以使用,它们可以帮助我们解决各种问题,提高开发效率。Insight-gulden-ui 是一个优秀的前端 UI 库,可以帮助我们快速构建页面,提供了诸...

    2 年前
  • npm 包 react-captcha-qiuz 使用教程

    简介 react-captcha-qiuz 是一款基于 React 开发的验证码组件,内置了数学运算验证码和图片验证码两种类型。它不仅可以用于网站的登录注册页面,也可以用于各种需要进行人机验证的场景。

    2 年前
  • npm 包 certiorem 使用教程

    简介 Certiorem 是一个帮助前端开发者进行数据验证的工具库,支持多种数据类型的验证,并且提供了多个常用验证规则的实现。本文将详细介绍 Certiorem 的使用方法和示例。

    2 年前

相关推荐

    暂无文章