12 数据库 09 ORM 数据删除
1、简要说明
这里开始,我们将讲解用 ORM 的方式来对数据进行删除操作。在框架中,实体处理是建立在SQL 语句处理的基础上的。我通过自定义的注解,将实体对象映射为一个可执行的 SQL 语句字符串,以及对应的参数列表。然后,通过 JDBC 方式执行语句。下面,我将设计几个库表,向大家介绍我所自定义的几个注解的作用。
2、库表设计
这里为了演示方便,我使用了SQL Server 2016 数据库作为例子。(主要是演示类型转换,因为SQL Server数据库,对于时间类型的处理,要求是 Java 中的 Timestamp 类型,而不是 LocalDateTime类型)。具体库表设计信息,可以参考《12 数据库 08 ORM 数据新增》文章中,第2点中的库表结构。
3、ORM映射实体举例( student 表)

其实实体通过 ORM 映射,生成delete 语句生成时,会校验实体的唯一属性。因为 delete 删除信息,要明确删除的具体是哪一条记录。delete 语句 的where 条件必须要明确。所以,在框架执行实体映射前,会自动校验注解是否完全填写。校验代码如下:

在不标记唯一列的情况下,执行删除处理,信息如下:

4、实体数据插入的测试代码示例



5、关于事务处理
关于事务的处理,其实大家可以参考前文《12 数据库 02 SQL 数据新增》。只需要把DBOperator的 deleteEntity 方法改为用 DBStaticUtil 的 deleteEntity 即可。这里不作过多演示。
本文完结。