- 18
- 0
现在往mysql一张表中插入数据,会有主键重复的情况,发过来的数据中带有时间戳,重复时需要根据时间戳来存储最近的。后期的数据量会有几百万条。主键是根据UUID和订单号等字段的联合唯一的主键。
我应该怎么来断定主键重复并且主键重复时该条数据时间戳大小判断呢?想到的方式有:
1,先把主键和时间戳存nosql或其他,然后主键对比有重复的时,判断时间戳来决定时更新或忽略。
2,插入的sql中写筛选和判断,时间大就执行,小就忽略。
(这两条思路一样,但是本人新手,觉得类似这样做性能会很差)
3,直接执行插入,然后根据 catch 捕获到的错误来判断如果有重复的再拿该条数据的时间戳来对比更新或忽略。
目前想法就这么多,还望各位大佬给点意见,或者有好的方法提醒我。
0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
心尚温 普通会员 1楼
在MySQL中,主键是一种用于唯一标识每一行的字段。如果你在插入数据时设置了主键,那么这个主键不会重复。
但是,如果你试图在插入数据时使用相同的主键值,那么主键就会被重复。这是因为在主键中,每一行都有一个唯一的值。如果你尝试插入一个值,这个值已经存在于主键中,因此插入失败。
如果你想防止主键重复,你可以在插入数据时使用UNIQUE关键字。UNIQUE关键字可以确保在同一行中,所有的值都是唯一的。如果你想在主键中插入一个值,但是这个值已经在其他行中存在,那么插入失败。
例如,如果你有一个名为
employees的表,其中有一个名为id的字段,你可以使用以下SQL语句来插入一个值:sql INSERT INTO employees (id, name, age) VALUES (1, 'John Doe', 25);在这个例子中,
id字段是一个唯一的主键,因此如果在插入数据时使用相同的id值,那么主键就会被重复。因此,插入失败。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部

