在insert语句或者delete语句执行后,SQL Server只返回受影响的记录行的总数,如果我们想知道到底所插入/所删除的记录的具体信息的话,这就有点复杂了。在SQL Server 2005之前的版本中,如果希望从已插入和已删除的虚拟表.
有这样一个需求,从表中取出一条记录插入到其他的表中之后并且删除记该录。
使用OUTPUT子句的SQL如下
delete top(1) from t_users
output deleted.user_name,
deleted.create_datetime into t_user_temp(user_name, create_datetime)
这样的话,是不是方便多了,呵呵
返回受 INSERT、UPDATE 或 DELETE 语句影响的每行的信息,或者返回基于上述每行的表达式。这些结果可以返回到处理应用程序,以供在确认消息、存档以及其他类似的应用程序要求中使用。此外,也可以将结果插入表或表变量。