首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >MySQL INSERT/UPDATE无重复键

MySQL INSERT/UPDATE无重复键
EN

Stack Overflow用户
提问于 2009-07-28 20:08:35
回答 1查看 2.2K关注 0票数 3

我可能误解了如何使用ON DUPLICATE KEY语法,或者我的数据库结构需要一些工作,但这里开始了。

我有一个表( bookings - meta ),它表示与另一个表(bookings)相关联的元数据,bookings表中的不同行在另一个表中可能具有也可能没有与其关联的特定元数据。

bookings-meta表包含以下列: meta_id (主键)、booking_id、key和value。

根据我的理解,要在重复键上使用,我需要知道在这种情况下是什么meta_id,通常不是这样的,我试图简单地使用booking_id将键和值对推送到表中,所以如果特定键存在,那么它将被替换,否则将插入。

目前,我有一个单独的查询来尝试选择行,如果它找到了,我就更新它,如果没有,那么它是一个插入。

有没有一种方法可以在一个查询中执行插入/更新而不使用重复的键,或者我错过了这个技巧?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-07-28 20:12:25

如果可能,我会完全删除meta_id列,并将booking_idkey转换为复合主键。这将节省表中的空间,允许使用ON DUPLICATE KEY,并且总体上更加整洁。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1196441

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档