日期:2014-05-16 浏览次数:20816 次
[导读]本文将介绍在MySQL中unique列上插入重复值的解决方案,希望对广大数据库开发人员有所帮助。
本文的unique列上插入重复值解决方案,主要基于MySQL平台。通过这些,可以做到一些新的功能和应用。希望本文能对大家有所帮助。
当unique列在一个UNIQUE键上插入包含重复值的记录时,我们可以控制MySQL如何处理这种情况:使用IGNORE关键字或者ON DUPLICATE KEY UPDATE子句跳过INSERT、中断操作或者更新旧记录为新值。
- mysql>?create?table?menus(id?tinyint(4)?not?null?auto_increment, ?
- ???->?label?varchar(10)?null,url?varchar(20)?null,unique?key(id)); ?
- Query?OK,?0?rows?affected?(0.13?sec) ?
- mysql>?insert?into?menus(label,url)?values('Home','home.html'); ?
- Query?OK,?1?row?affected?(0.06?sec) ?
- mysql>?insert?into?menus(label,url)?values('About?us','aboutus.html'); ?
- Query?OK,?1?row?affected?(0.05?sec) ?
- mysql>?insert?into?menus(label,url)?values('Services','services.html'); ?
- Query?OK,?1?row?affected?(0.05?sec) ?
- mysql>?insert?into?menus(label,url)?values('Feedback','feedback.html'); ?
- Query?OK,?1?row?affected?(0.05?sec)?
- mysql>?select?*?from?menus; ?
- +----+----------+---------------+ ?
- |?id?|?label???|?url??????????| ?
- +----+----------+---------------+ ?
- |?1?|?Home????|?home.html????| ?
- |?2?|?About?us?|?aboutus.html?| ?
- |?3?|?Services?|?services.html?| ?
- |?4?|?Feedback?|?feedback.html?| ?
- +----+----------+---------------+ ?
- 4?