当前位置: 首页 > 面试题库 >

MS SQL Server上次插入的ID

方长卿
2023-03-14
问题内容

在我的数据库中,所有表都使用一个通用表作为Sequence(ID_Table)。

TABLE_ID有两个字段(Common_ID,Table_Name)。

如果我在表中插入任何记录,则必须首先在Table_ID(Auto-
increment,Table_name)中插入一条记录,然后在“其他表”中使用该Auto-increment值。

例如,我想在具有字段ID(Common_ID),Product_Name,Product_ID(Auto
Increment)的Table_Products中插入

我想做这样的事情:

INSERT INTO TABLE_ID (Table_NAME), Values (Table_Products)

获取插入的ID并在Table_Products中使用它:

INSERT INTO Table_Products (ID, Product_Name, Product_ID(Auto Increment) 
VALUES (ID from TABLE_ID, SomeProduct, Increment)

问题答案:

试试这个-

DECLARE @ID BIGINT

INSERT INTO dbo.TABLE_ID (Table_NAME) 
SELECT 'Table_Products'

SELECT @ID = SCOPE_IDENTITY()

INSERT INTO dbo.Table_Products (ID, Product_Name)
SELECT @ID, 'SomeProduct'


 类似资料:
  • 我想从我的学生表中检索最后插入的id并传递到视图。但我不知道怎么做?我使用以下代码在表中插入数据。 有人能帮帮我吗?

  • 谁能帮我创建一个触发器,将Sensordata表中的最后一条记录附加到lastssensordata中。我只希望每个ConnectionDeviceId有1个值,并且该值必须是最后插入的值。(它将用于在仪表中显示)。我将在下链接我的sql脚本。

  • 我想在Hibernate中获取最后一个插入值的id。 搜索后: 但是下面的代码给我这个错误: JAVAClassCastException:java。数学无法将BigInteger转换为java。朗·朗 请分享你的想法! 解决方案 不要忘记导入: 导入java.math.大整数;

  • 我得到的数据集如下所示: 我想按时间字段对其进行分组,并获取每个时间间隔的MAX(openBid),并拥有最后5个间隔(在本例中为5分钟)。我使用这个查询: 结果如下: 我遇到的问题是,随着时间的推移,结果集中第一条记录的计数从1增加到5。在这个例子中,它是3。我希望我的查询在所有时间间隔内都有相同数量的记录。我认为问题是GROUP BY准时从集合的第一条记录开始。由于我正在执行ORDER BY

  • 我创建了一个二叉查找树类。我创建了我的插入方法、高度方法和打印方法。当我插入时,一切看起来都很好。如果根为空,我创建一个新的根并设置该项目。但是当我调用我的高度方法时,它打印出2而不是1。当我调用print方法时,它会两次打印出包括root在内的所有元素。例如,我按以下顺序插入了以下元素:9, 5, 4, 55, 555 当我调用PREorderPRINT方法时,它会输出:9, 5, 4, 9,

  • 问题内容: 我有一个类似于以下内容的插入语句: 我需要使用多个ID插入同一条语句。现在我有: 我只是必须运行此程序,还是有一个更精简的版本? 问题答案: 使用: