优化MySchool数据库 第三章上机 简答
来源:互联网 发布:redhat centos 编辑:程序博客网 时间:2024/06/05 02:26
--上机一declare @low intset @low=1;declare @row intset @row=1;declare @xing nvarchar(8)set @xing='☆'while(@low<=5)beginwhile(@row<=@low)beginprint @xingset @xing+='☆'set @row+=1endprint ''set @low+=1end--上机二declare @age intselect @age=FLOOR(DATEDIFF(DY,Birthday,GETDATE())/365) from Student where StudentNo='23268'select @age as 年龄 ,studentName as 姓名 from Student where StudentNo='23268'--上机三DECLARE @name nvarchar(50) --姓名DECLARE @score decimal(5,2) --分数SELECT TOP 1 @score=StudentResult,@name=stu.StudentName FROM Result r INNER JOIN Student stu ON r.StudentNo=stu.StudentNo INNER JOIN Subject sub ON r.SubjectNo=sub.SubjectNo WHERE r.StudentNo='20012' AND sub.SubjectName='Java Logic' ORDER BY ExamDate DESCPRINT '学生姓名:' + @nameIF (@score > 85) PRINT '考试等级:' + '优秀'ELSE IF (@score > 70) PRINT '考试等级:' + '良好'ELSE IF (@score > 60) PRINT '考试等级:' + '中等'ELSE PRINT '考试等级:' + '差'--上级四DECLARE @date datetime --考试时间DECLARE @subNO int --课程编号SELECT @subNO=SubjectNo FROM SubjectWHERE SubjectName='C# OOP'SELECT @date=max(ExamDate) FROM Result WHERE SubjectNo=@subNOPRINT '加分前学生的考试成绩如下:'SELECT 学号=StudentNo,成绩等级=CASE WHEN StudentResult BETWEEN 0 AND 59 THEN '你要努力了!!!' WHEN StudentResult BETWEEN 60 AND 69 THEN '★' WHEN StudentResult BETWEEN 70 AND 79 THEN '★★' WHEN StudentResult BETWEEN 80 AND 89 THEN '★★★' ElSE '★★★★' END FROM Result WHERE SubjectNo=@subNO AND ExamDate=@date DECLARE @n intWHILE(1=1) --条件永远成立 BEGIN SELECT @n=COUNT(*) FROM Result WHERE SubjectNo=@subNO AND ExamDate=@date AND StudentResult<60 --统计不及格人数 IF (@n>0) UPDATE Result SET StudentResult=StudentResult+2 FROM Result WHERE SubjectNo=@subNO AND ExamDate=@date AND StudentResult<=98 --每人加2分 ELSE BREAK --退出循环 END--上级五USE MySchool GOIF EXISTS(SELECT * FROM sysobjects WHERE name ='Admin')DROP TABLE AdminGOCREATE TABLE Admin( --创建表[LoginId] [nvarchar](50) NOT NULL,[LoginPwd] [nvarchar](50) NOT NULL)ALTER TABLE Admin --添加主健约束ADD CONSTRAINT PK_Admin PRIMARY KEY (LoginId)GOINSERT INTO Admin([LoginId],[LoginPwd]) VALUES('TEST1','123') --插入数据INSERT INTO Admin([LoginId],[LoginPwd]) VALUES('TEST2','123456') --插入数据GOUPDATE Admin SET [LoginPwd]='1234567' WHERE [LoginId]='TEST2' --更新数据GO--简答题--简答二DECLARE @i intDECLARE @j intDECLARE @str varchar(110)SET @i=1WHILE @i<10 BEGIN SET @j=1 SET @str='' WHILE @j<=@i BEGIN SET @str= @str+CAST(@i AS varchar(1))+' x '+CAST(@j AS varchar(1))+'='+CAST(@i*@j AS varchar(2))+' ' SET @j=@j+1 END print @str SET @i=@i+1 END --简答三 Print '罚款记录表情况如下:'Select RID ,BID ,PDate,Amount, 罚款类型=case When PType=1 then '损坏' When Ptype=2 then '延期' When Ptype=3 then '丢失'End from Penalty--简答四declare @count intdeclare @TDay datetimeset @TDay=DateAdd(dd,1,getDate()) --获取明天的日期select @count=count(*) from Borrow where willDate<@TDayIF(@count=0) BEGIN print '明天没有应归还的图书' EndElseIF(@count<10)BEGIN Update Borrow set WillDate=DateAdd(dd,2,WillDate) WHERE willDate<@TDayENDElse BEGIN print '还书总数量:'SELECT book.BName, reader.RName, borrow.LendDate FROM Book as book,Reader as reader,Borrow as borrow WHERE book.BID=borrow.BID and reader.RID=borrow.RID and borrow.willDate<@TDayprint @countEnd--简答五DECLARE @count int,@totalMoney moneySELECT @count=sum(BCount) FROM bookSELECT @totalMoney=sum(BCount*Price) FROM bookprint '现存数量'+convert(varchar(10),@count)print '总金额'+convert(varchar(10),@totalMoney)IF @count<10000 print '现有图书不足一万本,还需要继续购置书籍' ELSE print '现有图书在一万本以上,需要管理员加强图书管理'
0 0
- 优化MySchool数据库 第三章上机 简答
- 优化MySchool 数据库设计 第二章上机
- 优化MySchool 数据库设计 第二章 上机
- ACCP7.0S2优化MySchool数据库设计第三章上机1-3
- 优化MYSchool数据库设计第三章
- 优化MySchool 第六章 上机
- 优化MySchool 第六章上机
- 优化MySchool 第七章上机
- 优化MySchool 第七章 上机
- 优化MySchool 第六章 上机
- S2 优化MySchool 数据库设计 第七章 上机
- 优化MySchool 第三章作业
- 优化myschool数据库设计 第三章 学习内容
- ACCPS2优化MYSCHOOL数据库设计第三章练习题
- ACCP7.0S2优化myschool数据库设计第二章上机练习1-7
- ACCP7.0S2优化myschool数据库设计第四章上机1-4
- 优化MYSCHOOL二学期第三章
- 优化MySchool 第三章 SQL编程
- JavaScript构造函数,原型对象理解
- Android Studio apk打包,keystore.jks文件生成,根据keystore密钥获取SHA1安全码
- python urllib2实现获取余票个数(仅限于学习原理。)
- 基于UDP的nio日志服务器
- 第四章上机
- 优化MySchool数据库 第三章上机 简答
- java反编译笔记
- Ubuntu下安装Chrome
- TCP三次握手详解及释放连接过程
- 谈运营之提高玩家活跃度的新技巧
- matlab练习程序(PSNR)
- 笔记:css命名相关规范
- 第一行代码学习2(4)
- 枚举和结构体