gpt4 book ai didi

sql - 如何在发生数百万笔交易时插入最后一条记录?

转载 作者:行者123 更新时间:2023-12-04 21:04:31 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Best way to get identity of inserted row?

让我们假设我是第一次使用 SQL Server 2012 构建拍卖数据库。

有人创建了一个拍卖 list ,并将其插入数据库并赋予一个新的唯一 AuctionID。随着拍卖的插入,还有许多其他数据需要存储并与拍卖相关联,例如图片、产品属性等

有一个表保存基本的拍卖数据,然后是其他表来存储允许与拍卖建立多对多关系的所有其他信息。

现在,在保存有关拍卖数据的其他表中,至少有一列包含 AuctionID,另一列包含一些其他信息,例如产品规范。

我实现此目的的方法(到目前为止)是首先插入基本的拍卖列表并让数据库为其提供新的 AuctionID。极好的。接下来我这样做:

SELECT TOP 1 AuctionID FROM Auction
ORDER BY Timestamp DESC

这应该返回最后插入的 AuctionID,如果在插入后立即运行应该是正确的。

然后我获取此 AuctionID,并在将附加信息片段插入另一个表时使用该值,从而创建多对多关系。中提琴!

但是,当同时发生数百万个事务时,这是执行此操作的正确方法吗,因此理论上插入可能会在彼此的毫秒内发生。在进行插入和检索最后插入的 AuctionID 之间,我可能会得到错误的 AuctionID。

任何人都可以请原谅我的新手帖子并建议最好的方法吗?我面前有很多 SQL 书籍,但找不到与此相关的任何内容。

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