使用 UpdatableRecords 进行 CRUD 操作
适用于 ✅ 开源版 ✅ 专业版 ✅ 企业版
您的数据库应用程序可能由 50% - 80% 的 CRUD 组成,而只有剩余的 20% - 50% 的查询是实际的查询。大多数情况下,您将在表的记录上操作,而无需使用任何高级关系概念。这被称为 CRUD,因为
CRUD 总是使用相同的模式,而与底层表的性质无关。同样,如果您必须自己发出语句,这会导致大量的样板代码。像 Hibernate / JPA 和其他 ORM 一样,jOOQ 使用涉及 org.jooq.UpdatableRecord
类型的特定 API 来简化 CRUD。
主键和可更新性
在规范化的数据库中,每个表都有一个主键,通过该主键可以唯一地标识该表中的元组/记录。在简单的情况下,这是一个(可能自动生成的)名为 ID 的数字。但在许多情况下,主键包含多个非数字列。这种键的一个重要特性是,在大多数数据库中,它们都使用索引来强制执行,从而可以非常快速地随机访问表。访问/修改/删除书籍的典型方法是
-- Inserting uses a previously generated key value or generates it afresh INSERT INTO BOOK (ID, TITLE) VALUES (5, 'Animal Farm'); -- Other operations can use a previously generated key value SELECT * FROM BOOK WHERE ID = 5; UPDATE BOOK SET TITLE = '1984' WHERE ID = 5; DELETE FROM BOOK WHERE ID = 5;
规范化的数据库假设主键是“永久”唯一的,即一旦将键插入到表中,在删除后将永远不会更改或重新插入。为了正确使用 jOOQ 的 CRUD 操作,您应该相应地设计数据库。
目录
- 4.12.1.
- 简单的 CRUD 操作
- 4.12.2.
- 记录的内部标志
- 4.12.3.
- IDENTITY 值
- 4.12.4.
- 导航方法
- 4.12.5.
- 不可更新的记录
- 4.12.6.
- 乐观锁定
- 4.12.7.
- 批量执行
- 4.12.8.
- CRUD SPI:RecordListener
上一节 : 下一节 |
反馈
您对此页面有任何反馈吗?我们很乐意听到您的反馈!