sql2000 存储过程

1、创建一个存储过程,该存储过程能够实现根据系部的编号查询出系部中男生、女生的人数。
2、创建一个INSERT触发器,该触发器能够在向成绩表中添加数据时,自动判断学号、课程编号,成绩是否合法,如果非法则对插入操作进行会滚。
3、在pubs数据库中创建一个名为proc_test1的存储过程,执行的authors和titles表里查询出作者的信息及该作者的所有书的信息。
4、建立一个存储过程级联来修改pubs数据库的authors、titleauthor两张表,当用户修改authors表中的au_id后,修改titleauthors表中对应的数据。

create procedure cooladm
as
select distinct(系部表.系部编号),女生人数=count(学生基本信息表.性别)
from 学生基本信息表,班级表,系部表

where 学生基本信息表.性别='女'
group by 系部表.系部编号
go
select distinct(系部表.系部编号),男生人数=count(学生基本信息表.性别)
from 学生基本信息表,班级表,系部表

where 学生基本信息表.性别='男'
group by 系部表.系部编号
go
execute cooladm

-----------------------------------------------------

use xscj
go
create trigger del_INSERT on 成绩表
after insert
as
if exists
(
select * from inserted
where 学号 is not null
and 课程编号 in(select 课程编号 from 课程表)
and 成绩 between 0 and 100
)
print'添加成功!'
else
begin
print'添加数据不合法!'
rollback transaction
end
------------------------------------------------
use pubs
go
create procedure proc_test1 as
select titles.*,authors.* from titles,titleauthor,authors
where titles.title_id=titleauthor.title_id
and authors.au_id=titleauthor.au_id
go
-------------------------------------------------
create procedure sp_update (@current_au_id varchar (12),
@updated_au_id varchar(12))
as
if @current_au_id<>@updated_au_id
begin
update titleauthor set titleauthor.au_id=@updated_au_id
end
-------------------------------------------------
第8章项目实训作业
-------------------------------------------------
专业:04计算机应用
姓名:XXXX
学号:242004389003040
--------------------------------------------------
1、创建一个存储过程,该存储过程能够实现根据系部的编号查询出系部中男生、女生的人数。
2、创建一个INSERT触发器,该触发器能够在向成绩表中添加数据时,自动判断学号、课程编号,成绩是否合法,如果非法则对插入操作进行会滚。
3、在pubs数据库中创建一个名为proc_test1的存储过程,执行的authors和titles表里查询出作者的信息及该作者的所有书的信息。
4、建立一个存储过程级联来修改pubs数据库的authors、titleauthor两张表,当用户修改authors表中的au_id后,修改titleauthors表中对应的数据。  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值