0
我不相信我的標題能夠準確反映我的問題,但這裏是我有:如何循環訪問SQL表?
DECLARE @ListOfTables TABLE(
RowID INT NOT NULL PRIMARY KEY IDENTITY(1,1)
, TableName VARCHAR(200)
)
DECLARE @RowsToProcess INT
DECLARE @CurrentRow INT
DECLARE @TableName VARCHAR(200)
INSERT INTO @ListOfTables (TableName)
VALUES ('Books')
INSERT INTO @ListOfTables (TableName)
VALUES ('Magazines')
INSERT INTO @ListOfTables (TableName)
VALUES ('Essays')
SET @RowsToProcess = @@ROWCOUNT
SET @CurrentRow = 0
我希望再通過這個表圈和刪除。
WHILE @CurrentRow < @RowsToProcess
BEGIN
SET @CurrentRow = @CurrentRow+1
SELECT @TableName = TableName
FROM @ListOfTables
WHERE RowID = @CurrentRow
DELETE FROM @TableName
END
實際上,我的刪除不只是刪除表 - 它有特定的標準。爲了演示目的,我簡化了它。
我來到這裏的錯誤是:Must declare the variable '@TableName'.
我搬到成WHILE循環,我收到了同樣的錯誤。
我能在這裏做什麼?是否有可能做我想做的事情?
啊!正是我需要的。謝謝。 – Rail24 2014-11-06 22:01:27
請注意您獲取@TableName的數據的位置。你可以打開自己的SQL注入。 – SQLburn 2014-11-06 23:12:51