Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/72.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql Cursorfetch:INTO列表中声明的变量数量必须与选定列的数量匹配[不同的Dup]_Sql_Sql Server - Fatal编程技术网

Sql Cursorfetch:INTO列表中声明的变量数量必须与选定列的数量匹配[不同的Dup]

Sql Cursorfetch:INTO列表中声明的变量数量必须与选定列的数量匹配[不同的Dup],sql,sql-server,Sql,Sql Server,当我检查了变量的数量是否正确匹配时,我试图弄清楚为什么SQL会抛出这个错误。它是否与IF语句有关 DECLARE @ServerName VARCHAR(30), @SiteCode VARCHAR(4); DECLARE SiteList CURSOR FAST_FORWARD FOR SELECT Cinema_strServerName, Cinema_strCode FROM tblCinema; OP

当我检查了变量的数量是否正确匹配时,我试图弄清楚为什么SQL会抛出这个错误。它是否与IF语句有关

DECLARE 
    @ServerName VARCHAR(30),
    @SiteCode VARCHAR(4);

DECLARE SiteList CURSOR FAST_FORWARD
FOR SELECT 
        Cinema_strServerName, 
        Cinema_strCode 
    FROM 
        tblCinema;

OPEN SiteList;

FETCH NEXT FROM SiteList INTO 
    @ServerName, 
    @SiteCode;

WHILE @@FETCH_STATUS = 0
BEGIN

 -- Add Server Names To Exclude
 IF @ServerName IN ('test')
    BEGIN

        PRINT 'COPY \\' + @ServerName + 


    END


FETCH NEXT FROM SiteList INTO @ServerName
END

CLOSE SiteList
DEALLOCATE SiteList
错误

Cursorfetch:INTO列表中声明的变量数必须与所选列的变量数匹配

在第二次获取中(在循环结束时),您仍然有一个变量:

FETCH NEXT FROM SiteList INTO @ServerName
END

CLOSE SiteList
DEALLOCATE SiteList
为了避免类似这样的错误,我通常对游标使用不同的模式:

在第二次获取中(在循环结束时),您仍然有一个变量:

FETCH NEXT FROM SiteList INTO @ServerName
END

CLOSE SiteList
DEALLOCATE SiteList
为了避免类似这样的错误,我通常对游标使用不同的模式: