第二次作业评判

第14号作业:综合练习(二)

  1.问题复述

1、创建数据库CPXS,保存于E盘根目录下以自己学号+姓第一个字母(阿拉伯数字+大写字母)方式创建的文件夹中,

初始大小5MB,最大20MB,以10%方式增长,

日志文件存于同一文件夹,初始大小2MB,最大5MB,以1MB方式增长;

2、创建表CP,CPBH为主键,8位数字,CPMC,长度12个字符,JG为精确到小数点后2位,KCL为整数,除了KCL,其他都不能为空;

3、使用INSERT输入数据,具体数据如下:

(略)

3、显示CP所有记录

4、显示“产品名称”和“产品总值”,其中产品总值=JG*KCL

5、显示“产品名称”和“产品价格”,其中产品价格=JG*0.8

  2.知识回顾

简单的单表查询

  1.了解为何要"查询"

  2.查询的主要语句:SELECT

  3.SELECT语句的简单用法

本次作业涉及内容

 代码方式创建库,表,插入数据,查找数据(符合条件的数据)列与列的运算.(主要内容)

  3.评分标准(有部分改动)

1.代码规范:大小写应用合理,换行有缩进,正确使用注释(如确实需要注释的话),作业按照命名规范(如果作业中明确提出要求)。                                                 

                                                                                                                                         -----------可评价分数为0、0.5及1,由评判者裁定。

2.程序完整:按照题目要求完成了所有功能代码,没有遗漏,如作业要求完成对多个条件的查询,如果遗漏则按规则减分。                                                       

                                                                                                                                          -----------可评价分数为0、0.5及1,由评判者裁定。

3.语法正确:在查询分析器中运行语法检查通过与否。                          -----------可评价分数为0和1,通过为1,否则为0。

4.执行正确:在查询分析器中执行代码,检验其通过与否。                                             -----------可评价分数为0和2,通过为2,否则为0。

5.复议:对于上一步得0的作业,如果针对题目的代码本身没有问题,因为没有添加基础代码,如运行查询时没有提供建立数据库和表的代码导致不能运行,则检验其添加基础代码后是否能够运行,如果可以运行给0.5,1否则给0。

判定为抄袭者记0分,涉嫌抄袭的请尽快与老师联系

   4.优秀程序展示

 注:对原程序略有改动

 1 create database CPXS
 2 on
 3     (name='CPXS',
 4      filename='E:\171590103\CPXS_data.mdf',
 5          size=5mb,
 6      maxsize=20mb,
 7      filegrowth=10%)
 8 log on
 9     (name='COXS_log',
10      filename='E:\171590103\CPXS_log.ldf',
11      size=2mb,
12      maxsize=5mb,
13      filegrowth=1mb)
14 go
创建库
1 use CPXS
2 create table CP
3     (CPBH char(8) not null primary key,
4      COMC char(12)not null ,
5      JG decimal(6,2) not null,
6      KCL int null
7     )
8 go
创建表
 1 use CPXS
 2 insert into CP
 3     values('10001100', '冰箱A_100', 1500.00, 500)
 4 insert into CP
 5     values('10002120', '冰箱A_200', 1850.00, 200)
 6 insert into CP
 7     values('20011001', '空调K_1200', 2680.00, 300)
 8 insert into CP
 9     values('20012000', '空调K_2100', 3200.00, 1000)
10 insert into CP
11     values('30003001', '冰柜L_150', 5000.00, 100)
12 insert into CP
13     values('10001200', '冰箱B_200', 1600.00, 1200)
14 insert into CP
15     values('10001102', '冰箱C_210', 1890.00, 600)
16 insert into CP
17     values('30004100', '冰柜L_210', 4800.00, 200)
18 insert into CP
19     values('20001002', '空调K_3001', 3800.00, 280)
20 insert into CP
21     values('20001600', '空调K_1600', 4200.00, 1500)
22 go
插入数据
1 use CPXS
2 select CPBH,CPMC,JG,KCL from cp
3 go
4 select CPMC as '产品名称',JG * KCL as '产品总值' from CP
5 go
6 select CPMC as '产品名称',JG * 0.8 as '折扣价格' from CP
7 go
8 select CPMC as '产品名称',JG * KCL*0.8 as '折后总价' from CP
9 go    
查询语句

  5.个体情况

1,4班各有一位同学未交作业

若有任何疑问欢迎评论

  6.整体评价(问题的总结与解决,同学代码优秀之处)

优秀代码解析:

  大小写统一(关键词均为小写,建议大写),命名规范,审题清晰,代码分块,作业文件命名清晰符合老师要求.go的用法与decimal的用法正确.(insert可以不用写那么多次)

集中问题:

  Q1:不知如何正确的表示两(多)位小数,不会使用decimal(p,a)

  Q2:go的用途不清

  Q3:审题不清

  Q4:借鉴别人作业现象突出

解决方法:

  A1:左图展现的是一个带小数的数字它在SQL语言中应当用decimal数据类型来保存,才不会丢失数据(不会将小数点后的56丢失)decimal(a,b)是正确的储存方式,

  A2:1.每个被go分隔的语句都是"隔离"的,一部分语句失败不会影响其它部分语句的执行(go是分批处理的意思)

        2.优点:即使部分代码出错,结果也可能是对的

     3.特殊用法:其中A为整数,意味着被go夹住的代码被重复执行A遍

1 go A
2 select * from CP

 

  A3:请同学们不要"赶"作业,写作业时多思考,多试验,这样审题的问题应该能得以解决

  A4:初期借鉴可以但是不能直接复制粘贴,会严查抄袭.

posted @ 2018-04-16 16:05  爱物理的Y先生  阅读(504)  评论(1编辑  收藏  举报