触发器和存储过程

设有 Student(CNO,CNAME,SEX,AGE,SCORE)
表示学生的(学号、姓名、性别、年龄、学分)
SC(CNO,COURSE,Score)表示学生的(学号,课程,学分)实现下面触发器:
1。增加触发器:增加学分记录时,增加SCORE
2。删除触发器:删除学分记录时,减少SCORE
3。更新触发器:更新学分记录时,更改SCORE

CREATE TRIGGER AddScore ON [SC]
FOR INSERT
AS
begin
  declare @CNO1 int
  declaer @COURSE1 char
  declare @Score1 float
  select @CNO1=CNO,@COURSE1=COURSE,@Score1=Score from inserted
  update Student set SCORE=SCORE+@Score1 where
  CNO=@CNO1
end
go

insert into SC values(1,"hh",22)

CREATE TRIGGER DelScore ON [SC]
FOR DELETE
AS
begin
  declare @CNO1 int
  declaer @COURSE1 char
  declare @Score1 float
  select @CNO1=CNO,@COURSE1=COURSE,@Score1=Score from inserted
  update Student set SCORE=SCORE-@Score1 where
  CNO=@CNO1
end
go
s
delete into SC values(1,"hh",22)

CREATE TRIGGER DelScore ON [SC]
FOR DELETE
AS
begin
  declare @CNO1 int
  declaer @COURSE1 char
  declare @Score1 float
  select @CNO1=CNO,@COURSE1=COURSE,@Score1=Score from inserted
  update Student set SCORE=SCORE-@Score1 where
  CNO=@CNO1
select @CNO1=CNO,@COURSE1=COURSE,@Score1=Score from inserted
  update Student set SCORE=SCORE+@Score1 where
  CNO=@CNO1
end
go

update into SC values(1,"hh",22)


1)存储过程的练习
设有Student(CNO,CNAME,SEX,AGE)
设计一个存储过程 实现如下的查询
SEX=xx and AGE<=YY

CREATE PROCEDURE r
   @SEX1 char,
   @AGE1 int
AS
select * from Student
where SEX=@SEX1 and AGE<=@AGE1

GO


exec r '女',50

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值