【发布时间】:2017-08-17 15:16:45
【问题描述】:
这个问题实际上是两个部分。第一部分只是插入到带有临时表的真实表中,并且将输出插入到另一个临时表中不起作用。这是一个例子。
Insert Into student
Output INSERTED.*
Into #StudentsOutput
Select *
From #StudentsResult
当我将鼠标悬停在上面时出现的错误。
无效的对象名称“#StudentsOutput”
我看到的所有 msdn 示例都可以这样做,除非因为它涉及两个临时表,所以你不能这样做。
还请注意,我尝试专门为student 表和#StudentsResult 表指定列。这从上面产生了相同的结果。所以为简洁起见,我只显示上面的 tsql
下一个问题是我希望新的临时表 #StudentsOutput 包含旧的学生 ID。因为我要修改其他需要引用旧学生 ID 的表。下面的例子。
Insert Into student
Output INSERTED.student_id, s.student_id as [old_student_id]
Into #StudentsOutput
Select *
From #StudentsResult as s
这对于我需要将旧值查找到新值来说是完美的!以下错误。
无法绑定多部分标识符“s.student_id”。
【问题讨论】:
标签: sql sql-server tsql