mssql方便的函数使用与游标使用练习

来源:互联网 发布:js获取fontsize大小 编辑:程序博客网 时间:2024/04/29 21:33

 

 

结果:

 

 

新建函数:

GO/****** 对象:  UserDefinedFunction [dbo].[fun_get_class_nam]    脚本日期: 07/28/2012 07:26:23 ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO/******************************************************* PROCEDURE : fun_get_class_nam** DECRIPTION: 根据班级id获取班级名称** DATE      : 2010-07-28** VERSION      AUTH          DATE          DESC** --------  ------------  ------------  -----------------** V000.0.1    pukuimin2010-07-28     新建程序** --------  ------------  ------------  -----------------*******************************************************/alter function [dbo].[fun_get_class_nam](  @class_id bigint )returns varchar(200)asbegindeclare @class_nam varchar(200)set @class_nam = nullselect @class_nam = className  from classinfo  where classID = @class_id AND stat='1'return @class_namEND


查询语句中使用函数:

SELECTid,username,userpwd,classID,dbo.fun_get_class_nam(classID) AS classname,score,ageFROMstuinfo


 

下面是游标的简单用法:

    DECLARE cur CURSOR  --声明游标FORSELECT score,age FROM stuinfoOpen cur  --打开游标    DECLARE @score int --接收游标数据的变量,与上面的声明游标查询语句的个数相同DECLARE @age int fetch Next from cur into @score,@age  --查询一次数据到变量     WHILE (@@FETCH_STATUS = 0 )  --如果不为空就循环读取BEGIN    IF (@score<85 AND @age <18)  --对符合条件的进行操作        UPDATE stuinfo SET score = 888        WHERE  CURRENT OF cur     FETCH Next FROM cur INTO @score,@age  --查询下一条ENDCLOSE cur   --关闭游标DEALLOCATE cur  --释放游标