网站建设源代码共享,塑料公司网站建设方案,网站太原wangz建设,网络运营商自动选择一、学习目标 熟悉存储过程的定义和使用#xff0c;熟练运用 select ,update ,insert ,delete 命令完成对学生信息数据库的查询、更新、添加、删除操作。 二、学习内容 学生#xff08;学号#xff0c;年龄#xff0c;性别#xff0c;系名#xff09; 课程#xff08;…一、学习目标 熟悉存储过程的定义和使用熟练运用 select ,update ,insert ,delete 命令完成对学生信息数据库的查询、更新、添加、删除操作。 二、学习内容 学生学号年龄性别系名 课程课号课名学分学时 选课学号课号成绩 根据上面基本表的信息定义一个存储过程完成下面功能 入口参数学号 1 显示学生的选课信息 2 如果学生没选课让他选1号课插入一条选课记录成绩为0 3 如果学生所有课都不及格删掉该学生记录 三、SQL代码
create procedure shiyan7(sno char(10))
as
if sno in (select xe.sno from xe)
begin
declare w int
set w(select max(grade) from xe where xe.snosno)
if w60
begin
print此学生成绩不合格予以删除
delete from xe where xe.snosno
end;
else
begin
print选课信息
select stu.sno,stu.sname,xe.cnum,xe.grade
from stu,xe
where stu.snoxe.sno and stu.snosno
end;
end;
else
begin
print此学生未选课
insert into xe
values(sno,01,0)
end;
exec shiyan7 200511101
exec shiyan7 200511104
exec shiyan7 200511811四、结果截图 初始数据 最终结果数据 五、小结 1创建存储过程 CREATE ORREPLACE PROCEDURE 过程名[参数1参数2..…]) AS 过程化 SOL 块: 存储过程包括过程首部和过程体。在过程首部“过程名”是数据库服务器合法的对象标识参数列表参数1参数2,…用名字来标识调用时给出的参数值必须指定值的数据类型。可以定义输入参数、输出参数或输入输出参数默认为输入参数也可以无参数 2执行存储过程 CALL/PERFORM PROCEDURE 过程名参数1参数2.…; 使用CALL或者PERFORM等方式激活存储过程的执行。在过程化SQL中数据库服务器支持在过程体中调用其他存储过程 3修改存储过程 可以使用ALTER PROCEDURE重命名一个存储过程 ALTER PROCEDURE过程名1 RENAME TO 过程名2; 可以使用ALTER PROCEDURE重新编译一个存储过程: ALTER PROCEDURE过程名COMPILE; 4删除存储过程 DROP PROCEDURE过程名0; 使用存储过程具有以下优点 (1由于存储过程不像解释执行的SQL语句那样在提出操作请求时才进行语法分析和优化工作因而运行效率高它提供了在服务器端快速执行SQL语句的有效途径。 (2存储过程降低了客户机和服务器之间的通信量。客户机上的应用程序只要通过网络向服务器发出调用存储过程的名字和参数就可以让关系数据库管理系统执行其中的多条SQL语句并进行数据处理。只有最终的处理结果才返回客户端。 (3方便实施企业规则。可以把企业规则的运算程序写成存储过程放入数据库服务器中由关系数据库管理系统管理既有利于集中控制又能够方便地进行维护。当企业规则发生变化时只要修改存储过程即可无须修改其他应用程序。