gpt4 book ai didi

java - Mysql 和 JDBC 返回陈旧数据

转载 作者:行者123 更新时间:2023-11-29 10:31:08 26 4
gpt4 key购买 nike

我们面临着 mysql 数据的一个奇怪问题。我们有一个 seqgenerator 表,它保存 id 的当前 seq。每次下订单时,我的应用程序都会查询 seqgenerator 表并更新一个数字并将其保存回 seqgenerator 中。

我们用来获取的查询是“select order_id from order_seq where appid = ? for update”更新查询“update order_seq set order_id = ? where appid = ?”

这一直工作正常,直到上周,上周选择查询返回的 id 已经在一天前使用过,并且该 id 被重置并从那里开始递增,因为我们覆盖了 1 天的订单。

最佳答案

你的设计太糟糕了。

首先,Id 应该始终是唯一的,这可以防止您的数据被覆盖。

SQL 还有一个自动递增字段,因此您不必每次都将 ID 更新为 1

Auto-increment allows a unique number to be generated automaticallywhen a new record is inserted into a table.

Often this is the primary key field that we would like to be createdautomatically every time a new record is inserted

Source:https://www.w3schools.com/sql/sql_autoincrement.asp

关于java - Mysql 和 JDBC 返回陈旧数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47389347/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com