游标select*和Fetch Next语句

游标select*和Fetch Next语句,select,cursor,fetch,teradata,Select,Cursor,Fetch,Teradata,我正在处理游标内的FETCH语句。我需要将SQL server脚本转换为Teradata 以下scnerio正在Teradata中工作(选择列) SQL SERVER输入:--------------------------------------- DECLARE vend_cursor CURSOR FOR SELECT cnic FROM departments; OPEN vend_cursor FETCH NEXT FROM vend_cursor; replace

我正在处理游标内的FETCH语句。我需要将SQL server脚本转换为Teradata

以下scnerio正在Teradata中工作(选择列)

SQL SERVER输入:---------------------------------------

DECLARE vend_cursor CURSOR  
    FOR SELECT cnic FROM departments;
OPEN vend_cursor  
FETCH NEXT FROM vend_cursor;
replace procedure #anonymous# ()
BEGIN

   declare var#0 VARCHAR(100);
   DECLARE vend_cursor CURSOR FOR
   SELECT
         cnic
   FROM departments;
   OPEN vend_cursor;
   FETCH NEXT FROM vend_cursor INTO
      var#0;
END;
DECLARE vend_cursor CURSOR  
    FOR SELECT * FROM departments;
OPEN vend_cursor  
FETCH NEXT FROM vend_cursor;
replace procedure #anonymous# ()
BEGIN

   declare var#0 VARCHAR(100);
   DECLARE vend_cursor CURSOR FOR
   SELECT
         cnic
   FROM departments;
   OPEN vend_cursor;
   FETCH NEXT FROM vend_cursor INTO
      var#0;
END;
Teradata输出:---------------------------------

DECLARE vend_cursor CURSOR  
    FOR SELECT cnic FROM departments;
OPEN vend_cursor  
FETCH NEXT FROM vend_cursor;
replace procedure #anonymous# ()
BEGIN

   declare var#0 VARCHAR(100);
   DECLARE vend_cursor CURSOR FOR
   SELECT
         cnic
   FROM departments;
   OPEN vend_cursor;
   FETCH NEXT FROM vend_cursor INTO
      var#0;
END;
DECLARE vend_cursor CURSOR  
    FOR SELECT * FROM departments;
OPEN vend_cursor  
FETCH NEXT FROM vend_cursor;
replace procedure #anonymous# ()
BEGIN

   declare var#0 VARCHAR(100);
   DECLARE vend_cursor CURSOR FOR
   SELECT
         cnic
   FROM departments;
   OPEN vend_cursor;
   FETCH NEXT FROM vend_cursor INTO
      var#0;
END;
但我需要转换以下脚本(其中select列替换为select*) SQL SERVER输入:---------------------------------------

DECLARE vend_cursor CURSOR  
    FOR SELECT cnic FROM departments;
OPEN vend_cursor  
FETCH NEXT FROM vend_cursor;
replace procedure #anonymous# ()
BEGIN

   declare var#0 VARCHAR(100);
   DECLARE vend_cursor CURSOR FOR
   SELECT
         cnic
   FROM departments;
   OPEN vend_cursor;
   FETCH NEXT FROM vend_cursor INTO
      var#0;
END;
DECLARE vend_cursor CURSOR  
    FOR SELECT * FROM departments;
OPEN vend_cursor  
FETCH NEXT FROM vend_cursor;
replace procedure #anonymous# ()
BEGIN

   declare var#0 VARCHAR(100);
   DECLARE vend_cursor CURSOR FOR
   SELECT
         cnic
   FROM departments;
   OPEN vend_cursor;
   FETCH NEXT FROM vend_cursor INTO
      var#0;
END;
Teradata输出:---------------------------------

DECLARE vend_cursor CURSOR  
    FOR SELECT cnic FROM departments;
OPEN vend_cursor  
FETCH NEXT FROM vend_cursor;
replace procedure #anonymous# ()
BEGIN

   declare var#0 VARCHAR(100);
   DECLARE vend_cursor CURSOR FOR
   SELECT
         cnic
   FROM departments;
   OPEN vend_cursor;
   FETCH NEXT FROM vend_cursor INTO
      var#0;
END;
DECLARE vend_cursor CURSOR  
    FOR SELECT * FROM departments;
OPEN vend_cursor  
FETCH NEXT FROM vend_cursor;
replace procedure #anonymous# ()
BEGIN

   declare var#0 VARCHAR(100);
   DECLARE vend_cursor CURSOR FOR
   SELECT
         cnic
   FROM departments;
   OPEN vend_cursor;
   FETCH NEXT FROM vend_cursor INTO
      var#0;
END;
输出需要修改。现在我需要运行select*语句,所以需要修改fetch next。一个可能的解决方案是创建一个新类型的varray,并在INTO之后在fetch语句中使用它。但这是行不通的。有人能帮我转换一下吗