应用层架构设计,应该可以兼容网络层经常出现的重发和乱序。
你目前的设计,自增uid+双insert还好,倘若是insert+update,就容易因为网络层包乱序而带来应用层语义不确定。
【 在 DragonDon 的大作中提到: 】
: 标 题: mysql如何支持同一主键记录下的两次写入操作
: 发信站: 水木社区 (Sat Mar 25 16:02:16 2023), 站内
:
: 目标功能是根据request消息中信息更新数据库。
:
: 设计方案是把消息中携带的id作为表的主键,消息中其他信息insert到表的相应字段;
: 目前的场景存在2条消息携带同一id,但携带不同的信息,如何把两条带有相同id的消息中的各自信息insert到表中的同一条记录中的相应字段。
:
: 如果直接insert,会报pymysql.err.IntegrityError: (1062, "Duplicate entry 'xxxx' for key 'xxxx.PRIMARY'"),mysql不支持对同一主键记录的两次insert操作
:
:
: --
:
: ※ 来源:·水木社区
http://www.mysmth.net·[FROM: 101.204.53.*]
--
修改:lipp FROM 125.35.5.*
FROM 125.35.5.*