我使用SQL Server 2008 R2,我的問題是這是一個名爲LogStats的數據庫。如何將一列從一個表複製到另一個表在SQL Server中
如果我執行這個查詢:
select *
from ExceptionRow
inner join HashFP ON ExceptionRow.Hash=HashFP.FingerPrintMD5
where ExceptionRow.Message is null
AND not HashFP.MessageFP is null
我得到了126708次點擊,並把它2.05分鐘。但優化不是我的問題。
我想將數據從HashFP.MessageFP複製到ExceptionRow.Message而不覆蓋任何數據。我試試這個:
UPDATE ExceptionRow
SET Exceptionrow.Message = HashFP.MessageFP
FROM ExceptionRow
INNER JOIN HashFP ON ExceptionRow.Hash=HashFP.FingerPrintMD5
WHERE ExceptionRow.Message IS NULL
AND NOT HashFP.MessageFP IS NULL
結果:
消息9002,級別17,狀態4,第1行的事務日誌數據庫 'LogStats' 已滿。要找出爲什麼日誌中的空間不能被重用, 請參閱sys.databases的log_reuse_wait_desc列。
我嘗試這樣做:
SELECT name,log_reuse_wait_desc FROM sys.databases
從結果
tempdb ACTIVE_TRANSACTION
LogStats ACTIVE_TRANSACTION
哪有我放棄那些活躍的交易,這樣任務可以成功?