ON DUPLICATE KEY UPDATE 语法并不是SQL的标准语法,如果在句尾指定该语法,它会根据指定的主键或者唯一标示索引来更新数据库的内容

具体的操作是想根据唯一标示查看数据库是否存在该记录,如果存在该记录就更新,如果不存在就会插入一条新的记录,

例子:

<insert id="batchCreatTickets" parameterType="java.util.List">
     insert into ticket 
     (id,ticket_id,price,stock,ticket_status,
     show_id)
     values
     <foreach collection="tickets" item="item" index="index"
            separator=",">
       (#{item.id},#{item.ticketId},#{item.price},#{item.stock},#{item.ticketStatus},
        #{item.showId})
    </foreach>
        ON DUPLICATE key update ticket_status=values(ticket_status),stock=values(stock),price=values(price)
  </insert>

使用ON DUPLICATE KEY UPDATE 时 如果想要更新数据,需要使用values(字段名)

相关文章:

  • 2022-12-23
  • 2021-11-17
  • 2022-12-23
  • 2021-10-13
  • 2021-07-25
  • 2021-12-03
  • 2021-09-02
猜你喜欢
  • 2021-11-06
  • 2022-12-23
  • 2022-02-17
  • 2022-12-23
  • 2021-11-10
  • 2021-10-23
  • 2018-01-18
相关资源
相似解决方案