• SQL 游标使用实例


    IF EXISTS(SELECT *FROM sysobjects WHERE name='sp_ContestSubmit')  
        DROP PROC sp_ContestSubmit
    GO
    -- =============================================
    -- Author:        zqt
    -- Create date: 2011-11-25
    -- Desc:        系统管理员批量给未交卷的考生交卷-竞赛
    -- =============================================
    Create proc sp_ContestSubmit
    @GroupID int            --考核ID
    as
    --申明一个游标
    DECLARE MyCursor CURSOR    
        FOR select PK_UserExamID,FK_UserID,FK_ExamOrContestID from Score_UserExam where IsComplete=0 AND  FK_ExamOrContestID in(select PK_ContestInfoID from Contest_Info where FK_ContestGroupID=@GroupID)
    
    --打开一个游标    
    OPEN MyCursor
    
    --循环一个游标
    DECLARE @UserExamID int ,@UserID int ,@ExamManageID int
        FETCH NEXT FROM  MyCursor INTO @UserExamID, @UserID,@ExamManageID
    WHILE @@FETCH_STATUS =0
        BEGIN
            --获取考试考试分数
            DECLARE @UserExamScore int
            select @UserExamScore=sum(Score) from Score_UserAnswer where FK_UserID=@UserID AND FK_UserExamID=@UserExamID
            
            --修改考生交卷信息
            UPDATE [Score_UserExam] SET [Score] =@UserExamScore,[IsComplete] = 1,[EndTime] = getdate(),[DurationSecs] = datediff(ss,BeginTime,getdate()) where PK_UserExamID=@UserExamID 
            FETCH NEXT FROM  MyCursor INTO @UserExamID, @UserID,@ExamManageID
        END    
    
    --关闭游标
    CLOSE MyCursor
    --释放资源
    DEALLOCATE MyCursor
    
    /* 测试
        exec sp_ContestSubmit 1
    */ 
    GO
  • 相关阅读:
    NHibernate 配置增加代码感知
    NHibernate应用开发
    Spring.Net+NHibernate+Castle学习网站
    Windows Live Writer 网易博客配置
    第一章. 序言
    NHibernate之配置文件属性说明
    Log4Net各参数API
    EntityFramework 6.0< Code First > 连接 Mysql数据库
    maven阿里云中央仓库
    eclipse安装maven
  • 原文地址:https://www.cnblogs.com/dekevin/p/5895042.html
Copyright © 2020-2023  润新知