【发布时间】:2019-11-06 10:48:41
【问题描述】:
所以我想从数据库中的用户订购产品,查询如下:
INSERT INTO [dbo].[Order](UserID, To_Adress, OrderDate, TravelTime, ItemCount, Status, TotalPrice)
VALUES (1, 'BIKINI BOTTOM', '20191030 15:00:00', '20191030 15:35:00', 1, 'InTheMaking', 7.50)
下订单后,我想将产品和订单之间的连接放入数据库中,但我必须得到我刚刚创建的OrderID。有没有办法从我刚刚下的订单中获取OrderID?
INSERT INTO [dbo].[Order_Product](OrderID, ProductID)
VALUES (?[dbo].[Order].OrderID?, 12)
编辑:
好的,所以基本上SCOPE_IDENTITY 是从我的数据库中取出它的方法,但是我如何在第二个INSERT 中使用SCOPE_IDENTITY 同时仍然在同一个查询中?我只需要为此进行 2 个单独的查询吗?
【问题讨论】:
-
我想你会在这里找到答案:stackoverflow.com/questions/7917695/…
-
这能回答你的问题吗? How to get last inserted id?
-
@CR0N0S.LXIII 这很可怕,而且对并发问题很开放。数据库应自行分配 ID。
-
感觉你没有做太多谷歌搜索 - 你读过stackoverflow.com/questions/11534500/…