文档详情

DB第8章 数据库编程.ppt

发布:2017-06-17约1.77千字共52页下载文档
文本预览下载声明
数据库原理与应用;本章目标;T-SQL语言 (Transact Structured Query Language );使用变量 ;局部变量 ;局部变量示例 2-1;局部变量示例 2-2;全局变量 ;全局变量示例;逻辑控制语句;IF-ELSE示例 2-1;IF-ELSE示例 2-2;设置输出结果的格式;逻辑控制语句;WHILE示例 2-1;DECLARE @n int WHILE(1=1) --条件永远成立 BEGIN SELECT @n=COUNT(*) FROM stuMarks WHERE writtenExam60 --统计不及格人数 IF (@n0) UPDATE stuMarks --每人加2分 SET writtenExam=writtenExam+2 ELSE BREAK --退出循环 END print 加分后的成绩如下: SELECT * FROM stuMarks;逻辑控制语句;CASE-END示例 2-1;print ABCDE五级显示成绩如下: SELECT stuNo, 成绩= CASE WHEN writtenExam60 THEN E WHEN writtenExam BETWEEN 60 AND 69 THEN D WHEN writtenExam BETWEEN 70 AND 79 THEN C WHEN writtenExam BETWEEN 80 AND 89 THEN B ElSE A END FROM stuMarks;CASE-END课堂练习;CASE-END练习答案;批处理语句;批处理语句示例;批处理语句示例;课堂综合练习;课堂综合练习答案;;;;;;EXEC sp_databases EXEC sp_renamedb Northwind,Northwind1 USE stuDB GO EXEC sp_tables EXEC sp_columns stuInfo EXEC sp_help stuInfo EXEC sp_helpconstraint stuInfo EXEC sp_helpindex stuMarks EXEC sp_helptext view_stuInfo_stuMarks EXEC sp_stored_procedures ;;创建不带参数的存储过程;创建不带参数的存储过程;;;;;;输入参数的默认值;;;;CREATE PROCEDURE proc_stu @notpassSum int OUTPUT, @writtenPass int=60, @labPass int=60 AS …… SELECT stuName,stuInfo.stuNo,writtenExam, labExam FROM stuInfo INNER JOIN stuMarks ON stuInfo.stuNo=stuMarks.stuNo WHERE writtenExam@writtenPass OR labExam@labPass SELECT @notpassSum=COUNT(stuNo) FROM stuMarks WHERE writtenExam@writtenPass OR labExam@labPass GO;;;使用RAISERROR 语句;问题: 完善上例,当用户调用存储过程时,传入的及格线参数不 在0~100之间时,将弹出错误警告,终止存储过程的执行。 ;;使用RAISERROR 语句;总结
显示全部
相似文档