Update

查看 SQL UPDATE 命令的實際結果

  • April 12, 2012

有沒有辦法獲得SQL UPDATE命令的實際結果(即表行本身),而不僅僅是獲得行(除了將UPDATE命令轉換為 a SELECT)?我主要使用 Postgres 和 Informix,但我很想了解其他具有此功能的數據庫系統,或者可能是支持此功能的特定客戶端。

以下是在 SQL Server 中執行類似操作的方法。因為anUPDATE本質上是舊數據和新數據,SQL Server公開了deleted動態inserted表。UPDATE您可以與他們合作以獲取數據在 之前和之後的樣子UPDATE

update HumanResources.Department
set GroupName = 'Testing Group Name'
output
   deleted.DepartmentID as Old_DepartmentID,
   inserted.DepartmentID as New_DepartmentID,
   deleted.Name as Old_Name,
   inserted.Name as New_Name,
   deleted.GroupName as Old_GroupName,
   inserted.GroupName as New_GroupName
where DepartmentID > 12

引用自:https://dba.stackexchange.com/questions/16382