0
我試圖通過我的表中的幾個字段執行更新,以便切換它們的值(由於該軟件中的某些錯誤邏輯生成數據,這是我的contorol)。使用列作爲單個更新查詢的源和目標
我會使用看起來像這樣的查詢:
BEGIN TRANSACTION
SET @MyQuery = 'UPDATE myTable SET ColumnA = ColumnB, ColumnB = ColumnC WHERE myConditions'
EXEC @MyQuery
COMMIT TRANSACTION
或者,它應該是這樣的:
BEGIN TRANSACTION
SET @MyQuery = 'UPDATE myTable SET ColumnA = ColumnB WHERE myConditions'
SET @MyQuery2 = 'UPDATE myTable SET ColumnB = ColumnC WHERE myConditions'
EXEC @MyQuery
EXEC @MyQuery2
COMMIT TRANSACTION
我敢肯定分裂的疑問保證了結果,我想要,但如果我可以安全地假設一個單一的查詢是可靠的,它會更容易(更少的全面編輯)。
以前的查詢是否會達到與後者相同的結果?
非常直白,謝謝。 – Alex 2012-07-16 10:14:53