《实习内容(基础部分)_学生》由会员分享,可在线阅读,更多相关《实习内容(基础部分)_学生(4页珍藏版)》请在金锄头文库上搜索。
1、1实习内容实习内容(基础部分基础部分)一、活期存款管理系统一、活期存款管理系统 (选做选做)在活期存款中, “储户”通过“存取款单”和“储蓄所”发生联系。假定储户包括:账 号、姓名、电话、地址、存款额。 “储蓄所”包括:储蓄所编号、名称、电话、地址。假定 一个储户可以在不同的储蓄所存取款。 “存取款单”包括:账号、储蓄所编号、存取日期、 存取标志、存取金额,关键字为“账号+储蓄所编号+存取日期”1、画出相应的 E-R 图,并根据 E-R 图导出数据模型。2、在 H 盘的 DATA 文件夹下创建一个为 SAVE 的数据库名。3、在 SAVE 数据库中创建“储户” 、 “存取款单” 、 “储蓄所”
2、三个表。在三张表中创建主键 约束。要求:储蓄所表中的储蓄所编号从 1000 开始,每个递增 1;其它属性列的类型自选合适的定义;在存取款单表中账号字段参照储户表中的主键账号字段。同理存取款单表中的储蓄所编号参照储蓄所表中的主键储蓄所编号4、为存取款单表创建一个 CHECK 约束,使存取标志列的值要么是 1 要么是 0.5、创建一个系统当前日期的默认并与存取款单表的存取日期属性列绑定。6、查询储户表中储户的人数;7、创建视图查询储户表中储户存款额大于 2500 元的储户人数,并求平均存款额;8、创建一个视图显示用户账号、储户姓名、存款额和所在银行。9、在储户表中按姓名创建一个非聚集索引。10、创
3、建存储过程 INPROC,用于存款,即向存取款单中插入数据;并利用该存储过程插入二条数据。11、创建存储过程 OUTPROC,用于取款,即向存取款单中插入数据;并利用该存储过程插入二条数据。12、查询存取款单,显示存取款信息:将存取标志显示为文本注释:存取标志为 1,显示“存款” ;存取标志为 0,显示“取款” ; 13、计算储户在每一储蓄所存取款的金额。14、使用一个触发器 TR1 完成下面的功能:当向“存取款单”表中插入数据时,如果存取标志=1,则应该更改储户表,让存款额加上存取金额;如果存取标志=0,更改储户表让存款额减去存取金额,如果余额不足要显示相应的错误信息。二、商品销售管理系统
4、在商品销售中, “顾客”通过“购买”和“商品”发生联系。假定顾客包括:顾客号、 姓名、电话、单位、购买数量。 “商品”包括:商品号、商品名、型号、厂商、价格,一个 顾客可以买多种商品,一种商品供应多个顾客。 “购买”是由顾客号、商品号、购买日期、 购买数量、购买标志等组成,其中顾客号参照顾客表中的顾客号,商品号参照商品表中的 商品号。21、画出相应的 E-R 图,并根据 E-R 图导出数据模型 2、在 H 盘的 DATA 文件夹下,创建一个 cust 数据库。 3、在 cust 数据库中,创建顾客、商品和购买三个表。在三个表中创建主键约束。同时创 建相应的外键约束。4、为“购买”表创建一个 C
5、HECK 约束,使购买标志的值要么是 1 要么是 0。5、创建一个系统当前日期的默认并与购买表的购买日期属性列绑定。6、查询顾客表中顾客的人数;7、创建视图查询顾客表中顾客购买数量大于 25 的顾客人数,并求平均购买数量;8、创建一个视图显示顾客号、商品号、顾客电话、购买数量,并在该视图上创建索引。9、创建存储过程用于输入购买的数据。10、创建存储过程按商品号进行查询,得到有关该商品的商品名、顾客名、购买日期、价格等信息。11、查询购买表,显示购买信息:将购买标志显示为文本注释:购买标志为 1,显示“购买” ;购买标志为 0,显示“退货” ; 12、计算顾客购买每一种产品的数量及总量。 13、
6、创建一个触发器。当向“购买”表中插入数据时,如果购买标志为 1,则应该更改 “顾客”表中的购买数量;如果购买标志为 0(设为退货情况) ,则应将“顾客”表中的购 买数量扣除;如果购买数量出现问题要显示相应的错误信息。三、学生信息系统三、学生信息系统(选做选做) 设在学校,学生有学号、姓名、系别、出生日期等信息,在系信息表中有列“系号”、 列“系名”、列“系主任”。列“系号”是学生信息表引用系信息表的外键。有关课程有课程 号、课程名、学分等信息,每个学生只有一个学号、只在一个系、可以选修多门课程;每门课程只有一个课程号、可以由多个学生选修,学生选修课程产生成绩。学生成绩表包含 列“学号”、列“课
7、程号”、列“成绩”、列“学期”等,列“成绩”的值为 NULL 表示该学生缺 考这门课,成绩表中的学号、课程号分别参照学生表中的学号及课程表中的课程号。 1、 画出相应的 E-R 图,并根据 E-R 图导出数据模型 2、 在 D 盘的 DATA 文件夹下创建一个数据库,命名为 student。3、 在 student 数据库中,用 SQL 语言建立以上各表。在四个表中创建主键约束。同时创建相应的外键约束。 4、 为成绩表创建一个 CHECK 约束,使成绩值在 0-100 之间5、查询学号为“98120001”的学生所有缺考的课程数。6、 统计学期号为“第一学期”的每个学生所有科目的平均成绩。7、
8、 现在想评定该班级第一学年(包括第一学期和第二学期)的优秀学生奖学金,要求从该班级选出平均成绩排前5 名的同学。创建一个视图显示这些同学的学号和平均成绩。列 出所有学生的学号、姓名和所在的系名。 8、统计并显示每个系的系号、系名以及每个系学生的人数。 9、显示学生人数最多的系的系号、名称和学生人数。 10、创建一个内嵌的表值函数,要求每次输入一个学号,返回学生学习的课程的名称3和分数。 11、对学生表,选择姓名创建一个非聚集索引 XM。 12、编写一个存储过程,要求:每次输入一个学号,计算该学生的所有课程的平均分, 如果是 85100 分,返回“优”;如果是 7584 分,返回“良”;如果是
9、6574 分,返 回“中”;如果是 064 分,返回“差”。 13、编写删除的触发器,要求当删除学生表中的内容时,同时也删除成绩表中对应的行。 13、编写更新的触发器,要求当更新学生表中的内容时,同时也更新成绩表中对应的行。四、图书管理系统四、图书管理系统(选做选做) 在图书管理系统中, “作者”和“出版社”是通过编写(出版)图书来建立联系的,为 问题简单起见,假定“出版社”由出版社号、出版社名和地址组成, “作者”是由作者号、 作者名、地址、收入、电话号码、出生年月组成的,而“图书”是由图书号、图书名、作 者号、出版社号、价格、数量、类别、责编等组成。写出完成下列操作的 SQL 语句。 1、
10、 画出相应的 E-R 图,并根据 E-R 图导出数据模型。2、 在 D 盘的 DATA 文件夹下创建一个 tsdj 数据库3、 在 book 数据库中创建出版社、作者和图书三个表。在三个表中创建主键约束。同时创建相应的外键约束。要求:作者表中的作者号从 1000 开始,每个递增 1;其它属性列的类型自选合适的定义;在图书表中作者号字段与作者表中的主键作者号字段相对应,作者表中的作者号就是到图书表的外健。同理图书表中的出版社号与出版社表中的主键出版社号相对应,出版社表中的出版社号就是到图书表中的一个外键。 )4、 修改图书表增加出版日期字段,类型为 datatime。5、 创建一个系统当前日期的
11、默认并与图书表的出版日期属性列绑定。6、 在作者表中选择作者号创建一个非聚集索引 AUT;7、 创建视图查询作者表中作者收入大于 2500 元的作者人数,并求平均收入;8、 查询图书表,显示“图书名” , “数量”以及“是否进书”信息:根据图书的数量范围将“是否进书”显示为文本注释:数量在 3000 以上的,显示“数量太大,不宜再进” ;数量在 10003000 的,显示“数量相对较大,近期不进” ;数量在 5001000,显示“数量适中,可以少量进” ;数量在 100500 的,显示“数量到安全线,应该开始进书” ;数量在 100 以下的,显示“已到安全警戒线,开始进书” 。9、 使用存储过
12、程,按作者进行查询:图书名、作者名、出版社名、价格。10、创建一个存储过程计算每一出版社每种图书的价格。11、创建一个与作者表结构和数据相同的临时表,利用该临时表,判断是否有作者的收入少于 1000,如果有,则将所有作者的收入增加 500,直到所有作者的收入超过3000。 12、删除机械出版社出版的所有图书。 13、在作者表中创建一个触发器,禁止更新表的作者号列值。 14、在表图书表中定义触发器,在向图书表中插入数据行时,不允许插入管理类图书。415、创建存储过程用于输入图书的数据。 16、创建存储过程按作者号进行查询,得到有关该作者的作者名、图书名、出版社名、 价格等信息。 17、创建一个视图显示图书号、作者号、作者电话号码、出版社名,并在该视图上创 建索引。18、创建一个触发器。检查“图书”表中的“数量”是否已被修改,并根据数量值自 动计算出作者收入并写入收入字段中。收入计算原则是:若数量超过 3000,按数量的 50%计算;若数量超过 2000,按数量的 30%计算;其余按数量的 15%计算。