日期:2014-05-18  浏览次数:20662 次

又是游标问题!急,急,急,在线等。。。
下面是我的存储过程:
BEGIN
              DECLARE   @ID   VARCHAR(32);
              EXEC( 'SELECT   *   INTO   #T   FROM   '+   @databasename+   '. '   +@databaseAdmimistrator+   '. '   +   'ORG_INFO   WHERE   C_ORGID   NOT   IN   (SELECT   DISTINCT(FVORGID)   FROM   ORGANIZATION) ');
              DECLARE   @ID_CURSOR   CURSOR   FOR
                  SELECT   C_ORGID   FROM   #T
              OPEN   @ID_CURSOR;
              FETCH   NEXT   FROM   @ID_CURSOR   INTO   @ID;
提示FOR附近有语法错误。请问是什么原因?应该如何修改?谢谢!

------解决方案--------------------
你去看看帮助中的作用域吧,总之,如果用临时表,就按上面的方法,如果用永久表就可以用select into,例如
exec( 'select * into tttt from ..... ')

declare @id_.......
select c_orgid from tttt
..............
最后再删了它:drop table tttt,这样下一次用这个存储过程的时候不会提示tttt存在