0

変更しない限り変更されないテーブルがあり、それを変数値の参照として使用したいと考えています。列の各行を取得し、行を変数に設定し、いくつかのコマンドを実行してから、次の行を同じ変数に設定して繰り返したいと思います。

元。

rowNumberと列RowValueのあるテーブル

declare @rowNumber int, @RowValue nvarchar(255)
set @rowNumber = 1

set @RowValue = (Row # in RowValue column)

execute instructions with @RowValue value.

set @rowNumber = @rowNumber + 1

loop

以下の手順を使用して行の列を整理できることはわかっていますが、個々のセル値を変数に割り当てるというタスクを達成する方法がわかりません。

SELECT ROW_NUMBER() OVER( ORDER BY Names ) AS 'rownumber',*
FROM [Database Names]

これは、私が探していた答えの例です。カーソルを使用して、テーブルの列から値を繰り返し選択する必要がありました。

declare @DBName varchar(255)

declare db_cursor Cursor FOR 
select DBTable
from Database_Names.dbo.Database_Names
--where name not in ('DB') --Not Used but could be used to filter results

open db_cursor
Fetch Next from db_cursor into @DBName

WHILE @@FETCH_STATUS = 0   
BEGIN   
       print  'The Database Selected is ' + @DBName

       FETCH NEXT FROM db_cursor INTO @DBName   
END   

CLOSE db_cursor   
DEALLOCATE db_cursor
4

1 に答える 1

1

テーブルに ID を作成し、その ID を使用して、変更する各変数の各行の値を更新してみませんか。IE 更新テーブル セット variable_Value = '@x' ここで、Variable_id = @VariableID。次に、ループで @VariableID = @VariableID +1 を設定しますか? 私は質問を完全には理解していないかもしれませんが、これはあなたがやろうとしているようです.

于 2012-08-06T19:46:15.280 に答える