Sql 是否将创建的主键ID复制回从中获取新行值的临时表?
我有一张临时桌Sql 是否将创建的主键ID复制回从中获取新行值的临时表?,sql,sql-server,database,tsql,Sql,Sql Server,Database,Tsql,我有一张临时桌 tid tcol1 tcol2 -------------------- null 1 a null 2 b null 3 c 我使用temp将值插入表1 从temp中将tcol1、tcol2选择到表1中。现在表1看起来像 id col1 col2 --------------------- 1 1 a 2 2 b 3 3 c
tid tcol1 tcol2
--------------------
null 1 a
null 2 b
null 3 c
我使用temp将值插入表1
从temp中将tcol1、tcol2选择到表1中。现在表1看起来像
id col1 col2
---------------------
1 1 a
2 2 b
3 3 c
现在我想把ID复制回临时表。我正在试着让临时表像
tid tcol1 tcol2
--------------------
1 1 a
2 2 b
3 3 c
这可能吗。如果是,怎么做?在实际应用程序中不确定,但这里可以从temp中删除行,并从表1中插入
Delete from #temp
Insert into #temp
Select id, tcol1, tcol2 from table1
但可以肯定的是,更明智的方法是不要来回复制数据。在输入temp之前生成id。删除temp,然后
SELECT * INTO #temp FROM table1
我试图以表格的形式给出,但这是我所能给出的全部。很抱歉造成混乱。欢迎使用堆栈溢出-我建议您使用编辑功能编辑问题并进行必要的格式化。SO上的用户非常有帮助,但我们大多数人都希望看到格式正确的问题,我想你会同意的@谢谢你的建议。我能把它格式化得更好。我本该这么想的,谢谢你及时的帮助。