Mysql "insert ... on duplicate key update "和"replace into"

1. INSERT ... ON DUPLICATE KEY UPDATE

http://dev.mysql.com/doc/refman/5.6/en/insert-on-duplicate.html

insert into tableName values (1,  "testvalue", now()) on duplicate key update value=values(value), gmt_modify=values(gmt_modify);

前置条件:

      1. 一定要有主键,或者唯一索引

      2. 确认需求是,欲插入的记录在主键存在的情况下,需要做update, 否则执行insert.

 

语法解释:

      该语法可能要执行的动作是insert/update。

      如果主键已存在,执行update,否则执行insert。

 

说明:

      1. update 可更新多个字段

      2. 更新值可以从values中获取,也可自定义。

 

2. REPLACE

http://dev.mysql.com/doc/refman/5.6/en/replace.html

 

replace有多种用法,我只介绍replace into。

replace into tableName(id,value, gmt_modify) values(1, "testvalue", now());

前置条件:

      1. 一定要有主键,或者唯一索引

 

语法解释:

      该语法可能要执行的动作是insert/delete&insert。

      如果主键已存在,先删后增,否则执行insert。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值