2013-12-08 77 views
0

假設我有一個表,一列(Food)是這樣的:SQL遊標知識

FOOD 
-------- 
Pizza 
Milk 
Chicken 

我知道如何開始的光標,而選擇此列,但我怎麼每一次改變每一行我取它。例如,假設我有一個名爲@Food的變量nvarchar(MAX)類型。

在遊標中,我想要Fetch next into @Food。我如何更改我已經獲取的@Food變量,並將更改後的字符串替換爲列中的原始字符串(例如,將「Pizza」更改爲「Raspberry」)?

+1

不使用遊標來解決這個問題... –

+0

我已經用這個問題作爲一個基本的例子。真正的表格有近千行,實際編輯取決於每個字段的格式。因此,我需要一個遊標。 – user3078953

+2

100次中的99次,遊標比使用基於集合的語句更慢更復雜。期。一千行不算什麼。 10億行是很多.... –

回答

0

因爲您沒有識別您的特定數據庫供應商,所以我會將其作爲一般性聲明提出。

使用遊標將值複製到變量中就是這樣。它會創建該值的本地副本。更改@Food不會更改光標所檢索行的值。您需要在FOOD表上發佈更新聲明。