2012-03-22 86 views
0

動態更新語句我有一個表列數:生成通過TSQL

col1 
col2 
col3 
coln.... 

我需要生成動態UPDATE語句像下面這將在生產中使用的批量更新:

UPDATE TableA 
SET TableA.ColA = ValueOfCol2 
WHERE 
    TableA.ColB='A' 

任何人都可以請共享一個TSQL腳本,生成n個UPDATE聲明如上,請?

謝謝

+1

我不明白'WHERE TableA ='A''的用途? – Curt 2012-03-22 09:37:29

+0

你想在這裏測試什麼? '表A ='A''?你不能只是測試一個固定值的表名...... – 2012-03-22 09:38:20

+0

我的歉意,這是一個錯字。我更新了查詢 – 2012-03-22 09:57:22

回答

0

除非我誤解你的問題,你的示例代碼的工作原理:

UPDATE [updateDemo] SET [updateDemo].[col2] = [updateDemo].[col3] WHERE [col4] = 'A' 

這是基於這樣的假設,你的表是這樣的:

col1 | col2 | col3 | col4 
1  P  Z  A 
2  Y  Z  A 
3  K  S  V 

以上更新查詢會導致(方括號中的更改):

col1 | col2 | col3 | col4 
1  [Z] Z  A 
2  [Z] Z  A 
3  K  S  V 
+0

謝謝Paul,我已經將我的問題標題更新爲Dyanmic SQl。我需要能夠根據n個記錄生成dyanic更新語句 – 2012-03-22 11:42:56