SQLServer 判斷文件是否存在


根據20190621工作寫的邏輯,以后可根據實際情況再做修改。順便記錄一下游標的使用,加強記憶。

DECLARE @Id NVARCHAR(MAX) 
DECLARE @UserName NVARCHAR(MAX)  
DECLARE @Password NVARCHAR(MAX) 
DECLARE @NickName NVARCHAR(MAX)  
create table #tmp (Id NVARCHAR(MAX),UserName NVARCHAR(MAX),Password NVARCHAR(MAX),NickName NVARCHAR(MAX))  --建立臨時數據表 

--聲明一個游標mycursor,select語句中參數的個數必須要和從游標取出的變量名相同    
DECLARE mycursor CURSOR  
FOR  
    SELECT Id,UserName,Password,NickName FROM dbo.Users        
OPEN mycursor  --打開游標       
--從游標里取出數據賦值到我們剛才聲明的變量中(移動游標指向到第一條數據,提取第一條數據存放在變量中)    
FETCH NEXT FROM mycursor INTO @Id, @UserName,@Password,@NickName        
--判斷游標的狀態    
-- 0 fetch語句成功        
---1 fetch語句失敗或此行不在結果集中        
---2 被提取的行不存在    
WHILE (@@fetch_status = 0)   --如果上一次操作成功則繼續循環
    BEGIN        
        --顯示出我們每次用游標取出的值     
        --print (@Id+'--------'+@UserName+'--------'+@Password+'----'+@NickName)
        --條件判斷
        if (@Id>=10)
        begin
            INSERT INTO #tmp(Id,UserName,Password,NickName) VALUES(@Id,@UserName,@Password,@NickName) 
        end
        --用游標去取下一條記錄(繼續取下一行數據)
        FETCH NEXT FROM mycursor INTO @Id,@UserName,@Password,@NickName   
    END
  
CLOSE mycursor --關閉游標     
DEALLOCATE mycursor --撤銷游標(釋放資源 )   
SELECT * FROM #tmp; --查詢臨時表 
DROP TABLE #tmp --刪除臨時表

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM