c# - 我可以得到我刚刚插入的数据的ID吗?
问题描述
所以我想从数据库中的用户订购产品,查询如下:
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
是从我的数据库中取出它的方法,但是我如何SCOPE_IDENTITY
在一秒钟内使用它,INSERT
同时仍然在同一个查询中?我只需要为此进行 2 个单独的查询吗?
解决方案
尝试使用 SQLOUTPUT
子句:
INSERT INTO [dbo].[Order](UserID, To_Adress, OrderDate, TravelTime, ItemCount, Status, TotalPrice)
OUTPUT inserted.ID
VALUES (1, 'BIKINI BOTTOM', '20191030 15:00:00', '20191030 15:35:00', 1, 'InTheMaking', 7.50
推荐阅读
- sbt - SBT 可以用不同的库覆盖传递依赖吗?
- scala - 为在 SBT 中构建的项目使用通用测试实用程序文件
- python - PySpark - 将数据帧写入 Hive 表
- flutter - 我可以将对象作为参数传递给小部件吗
- javascript - 当我使用 Redux 在 React js 中更改路由时,为什么捐赠者卡消失并且表单为空
- excel - 使用不同工作簿上的按钮生成报告,然后将数据复制到工作簿中
- c# - 转换 DataGrid 中的项
- php - 计算两个日期之间的月份以及哪些月份是(PHP)
- c# - AddOpenIdConnect 与手动配置 - SecurityTokenSignatureKeyNotFoundException
- c# - 查询 XML 文件的更简单方法?C# - MVC .Net