mysql的更新问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql的更新问题相关的知识,希望对你有一定的参考价值。

字段name具有唯一属性, 如果name=woniu已经存在, 使用插入语句insert into mytable(age, sex, name) values('20', '0', 'woniu'), 怎样让mysql能自动更新name为woniu的记录而不是插入, 该使用什么命令?

这个,建议在插入前查询一下,如果有,则更新,如果没有,则插入。

如果坚持如此做的话,可以试试触发器(似乎也不行)

你再查查有没有可更新视图的概念。追问

没有某种机制可以让mysql检测到如果具有唯一属性的name字段重复的话, 将插入操作自动转为更新操作吗, 除了触发器?
在网上找了一个ON DUPLICATE KEY UPDATE命令语句, 不是太明白, 不知道和这个有没有关系?

追答

这个不懂,你可以试试

参考技术A 你是不是要把这个表里所有的name都改成woniu啊

如果是的话

update mytable set name='woniu'
参考技术B 知道update语句吗?干嘛非要insert

以上是关于mysql的更新问题的主要内容,如果未能解决你的问题,请参考以下文章

找不到 MySQL 丢失更新问题的解决方案

MySQL问题持续更新一

mysql 数据丢失更新的解决方法

mysql 时间自动更新问题

使用 Python 的 MySQLdb 更新 MySQL 表的问题

mysql 数据库的更新逻辑问题