TypeOrm | Repository APIs 用法纪录 2

https://typeorm.io/#/repository-api

常常在使用,但也只有使用到其中主要的method,刚好遇到 save vs. update 差在哪里的疑问,就一起记下来

  • count() 计算符合条件的资料数量,常用於分页功能

    • await repository.count({ firstName: "Timber" })
  • increment() 增加指定栏位的定数量

    • await manager.increment(User, { firstName: "Timber" }, "age", 3);
  • decrement() 减少指定栏位的指定数量

    • await manager.decrement(User, { firstName: "Timber" }, "age", 3);
  • find() 调用指定条件资料

    • ex. await repository.find({ firstName: "Timber" });
  • findAndCount() 调用指定条件资料,并计算资料数

    • ex. const [timbers, timbersCount] = await repository.findAndCount({ firstName: "Timber" });
  • findByIds() 使用id 调用资料

    • ex. await repository.findByIds([1, 2, 3]);
  • findOne() 查询符合条件的第一笔资料

    • ex. await repository.findOne({ firstName: "Timber" })
  • findOneOrFail() 查询符合条件的第一笔资料,若无则报错

    • ex. await repository.findOneOrFail(1);
  • query() 执行sql 语法

    • ex. await repository.query(SELECT * FROM USERS)
  • clear() 清宫指定table所有资料

    • ex. await repository.clear();

<<:  Day15-Webhook 实作(四)LINEBot 之 MessageBuilder(II)

>>:  Day15 - 在 Next.js 做 JWT 验证,使用既有的 Backend API - PART 1

Day 01 | 前言、规划及为什麽需要 Test Case Management?

目录 前言 文章规划 为什麽需要 Test Case Management? 需求与选择 需求是什麽...

Day29【Web】网页的会员卡:Session

session 的中文意思为「会话」, 在网路技术长期的演变与发展下, session 基本上具有以...

Day 19 ATT&CK for ICS - Evasion(1)

攻击者於入侵阶段要用来避免被发现,因此可以透过许多方式去避免侦测。 T0856 Spoof Repo...

从零开始学3D游戏开发 Roblox Studio 简介 Part.2

今天离开了起点,看到好多人都在赛道周边努力着 大家一起努力往终点进发吧! 这个单元我们继续学习 Ro...

Day-4 老玩家们最推荐、欧洲流行的 SCART 端子

现在若要使用怀旧主机、SCART 会是老玩家们最推荐的介面了。虽其最高仅支援 480i 解析度、但其...