Trigger,Cursor

USE [Demo]
GO

/****** Object: StoredProcedure [dbo].[p_couser_Student] Script Date: 02/24/2014 20:43:16 ******/
SET ANSI_NULLS ON
GO

SET QUOTED_IDENTIFIER ON
GO


--Student insert trigger update Class C_COUNT
--create trigger tr_I_Student
--on Student
--for insert
--as
--begin
-- update Class set C_Count=C_Count+1
-- where ID=(select C_ID from inserted)
--end
--Student delete trigger update Class C_COUNT
--create trigger tr_D_Student
--on Student
--for delete
--as
--begin
-- update Class set C_Count=C_Count-1
-- where ID=(select C_ID from deleted)
--end

--CREATE TRIGGER TR_U_STUDENT
--ON STUDENT
--FOR UPDATE
--AS
--BEGIN
-- IF UPDATE(C_ID)
-- begin
-- update Class set C_Count=C_Count-1
-- where ID=(select C_ID from deleted)
-- update Class set C_Count=C_Count+1
-- where ID=(select C_ID from inserted)
-- end
--END

ALTER proc [dbo].[p_couser_Student]
@Id int,
@Name varchar(20)
as
begin
declare @UName varchar(10)
declare @CName varchar(10)
print '姓名 班级'
declare mycursor cursor
for select S_Name,C_ID from Student
open mycursor
fetch next from mycursor into @UName,@CName
--判断游标的状态//0 fetch语句成功//-1 fetch语句失败或此行不在结果集中//-2被提取的行不存在
while(@@FETCH_STATUS=0)
begin
declare @str varchar(200)
select @str=@UName+' '+@CName+' 参数 '+convert(varchar(20),@Id)+','+@Name
print @str
fetch next from mycursor into @UName,@CName
end
close mycursor
deallocate mycursor
end

 

GO

 

posted on 2014-02-24 21:03  君凌  阅读(238)  评论(0编辑  收藏  举报

导航