2017-07-28 47 views
0

我爲auto follow用戶創建了一個存儲過程,並且此過程已在服務器上。在我的數據庫中,有2萬多個用戶。本店程序使用光標使用SQL Server存儲過程和光標的「傳輸級錯誤」

出現此錯誤從服務器接收結果時發生傳輸級錯誤。 (provider:TCP提供程序,error:0 - 一個現有的連接被強行關閉遠程主機)

這是我的存儲過程

   DECLARE @UserIdF Int 
      DECLARE @UserId Int 

     DECLARE csrAutoFollow CURSOR FOR 
     SELECT TOP (1) userid FROM dbo.users where IsFUser = 1 ORDER BY NEWID() 

     OPEN csrAutoFollow 
      FETCH NEXT FROM csrAutoFollow INTO @UserIdF 

      WHILE @@FETCH_STATUS = 0 
      BEGIN 
          DECLARE csrauto CURSOR FOR 
          SELECT userid FROM dbo.Users WHERE IsFUser IS NULL 

          OPEN csrauto 
           FETCH NEXT FROM csrauto INTO @UserId 

          WHILE @@FETCH_STATUS = 0 
          BEGIN  

           EXEC dbo.FollowUnfollowUser @UserIdF,@UserId,1 

          FETCH NEXT FROM csrauto INTO @UserId 
          END 

          CLOSE csrauto 
          DEALLOCATE csrauto 

       FETCH NEXT FROM csrAutoFollow INTO @UserIdF 
      END   
     CLOSE csrAutoFollow 
    DEALLOCATE csrAutoFollow 

請讓我知道這是否也可以改進

回答

0

「傳輸級別錯誤」意味着從中調用存儲過程的計算機與存儲過程所在的數據庫服務器失去了網絡連接,它與該過程的代碼無關

您需要讓您的網絡管理員查看問題。