DECLARE Friend_Cursor CURSOR FOR 
      SELECT memberId FROM memberTb WHERE memberId in (@receiveIds);sql server中这么写好像不得行?

解决方案 »

  1.   

    DECLARE Friend_Cursor CURSOR FOR  
      SELECT memberId FROM memberTb WHERE charindex(memberId,@receiveIds)>0
      

  2.   

    DECLARE Friend_Cursor CURSOR FOR  
      SELECT memberId FROM memberTb WHERE memberId in ('+@receiveIds+');
      

  3.   

    declare @id int
    declare @name varchar(50)
    declare cursor1 cursor for         --定义游标cursor1
    select * from table1   where name in (@name)            --使用游标的对象(跟据需要填入select文)
    open cursor1                       --打开游标fetch next from cursor1 into @id,@name  --将游标向下移1行,获取的数据放入之前定义的变量@id,@name中while @@fetch_status=0           --判断是否成功获取数据
    begin
    update table1 set name=name+'1'
    where id=@id                           --进行相应处理(跟据需要填入SQL文)fetch next from cursor1 into @id,@name  --将游标向下移1行
    endclose cursor1                   --关闭游标
    deallocate cursor1
      

  4.   

    DECLARE @i INT SET @i = 1DECLARE Friend_Cursor CURSOR FOR  
      SELECT name FROM master..spt_values WHERE number =@i;
    OPEN Friend_Cursor
    FETCH NEXT FROM Friend_Cursor;try
      

  5.   

    select * from table1 where name in (@name) 
    --改为下面
    select * from table1 where  @name like '%'+name+'%'
      

  6.   


    select * from table1 where charindex(','+name+',',','+@name+',')>0
    --传  1,2,3
      

  7.   

    谢谢各位,问题已经解决
    我是这么做的
      exec('Declare Friend_Cursor Cursor For Select memberId,nickName From memberTb    where memberId in ('+@receiveIds+')')