mybatis避免插入相同的数据

mybatis 新手

insert into table(name, age) values (name_value, age_value)

一条记录的名称和值与另一条记录相同

如何使用mybatis来避免它?

我正在使用 xml 创建映射器


人到中年有点甜
浏览 349回答 1
1回答

杨__羊羊

问题尚不清楚,但您必须在数据库中定义一个唯一键。因此,如果您指定 name 和 age 列是唯一的,那么您的 dbms 会阻止所有具有已存在的 name 和 age 的新行的插入。这是mybatis查询的一个例子:INSERT INTO mytable        (name, age)    VALUES        (        #{name},        #{age}        )    ON CONFLICT (name,age)    DO NOTHING所以它会尝试将一个值插入到您的表中。如果 dbms 返回错误,因为存在唯一键(由 [name 和 age] 组成),它会执行另一个操作。例如,您可以在 DO 之后放置一条 UPDATE 语句,而不是 DO NOTHING。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java