1、 课程设计报告书题目:二手教材售卖系统专 业: 信息与计算科学目录概述 .11. 需求分析 .11.1 用户需求 .11.2 业务流程分析 .11.3 信息需求分析 .21.4 功能需求分析 .32 概念结构设计 .33 逻辑结构设计 .53.1 E-R 图向关系模型的转换 .53.2 具体关系模型的表格设计 .64 数据库物理结构设计 .74.1 表间的联系设计 .74.2 数据库完整性设计 .84.3 安全性问题 .95. 处理功能设计 .106 系统的数据库实现 .107 系统运行的实现 .117.1 编写代码前的操作说明 .117.2 系统运行代码的实现 .117.3 系统运行结果 .
2、158 小结 .20参考文献 .211二手教材售卖系统概述每个学期学生们都要购买上课所需教材,虽然买几本书不会花很多钱,但是长期以往地购买教材,必然会导致一笔大钱的输出,所以二手书市场才会有这么大的吸引力。但是没有一个很好的平台可以解决大学的学院内部的教材的管理利用,会造成很多浪费,本系统就是针对解决这个问题而创造的。系统实现了对二手教材管理的一些操作,包括二手教材的售卖,搜索,删除,系统的用户为本学院的学生,每位本学院的学生都可以在此系统上注册,并拥有一个账号,通过登录此账号可以把自己不需要的二手教材卖给别人,系统也会提供卖家的联系方式,所以也可以买到别人的二手教材,这样可以让教材循环利用。
3、1. 需求分析1.1 用户需求大学中有很多学过的又不是专业课的教材,可能课程结束后是不会再次翻看的,但是下一年级的人可能会学同样的教材,而他们又要买新的教材,周而复始就会造成教材的浪费,所以二手教材市场是很有吸引力的,本系统就为二手教材的售卖提供了简易的界面,方便二手教材售卖的管理和交易。1.2 业务流程分析本系统面向的用户是在校学生,学生可以是卖家,也可以说买家,下面对于学生的这两个身份的对二手教材的处理不同进行分析:(1)卖家:要在本系统有一个可以登录的账号,如果没有可以注册一个账号。顺利登录账号后可以添加或是对自己已出售的教材信息进行修改、删除,卖家还要提供自己的联系方式,以便买家联系。
4、2(2)买家:也是要注册一个自己的账号,登录账号后可以查询自己想要的二手教材信息,还可以得到卖家的联系方式,以便交易。对于自己喜欢的教材但是暂时还不想购买,可以先加入购物车;对于已经购买后产生的订单信息可以选择性地删除。1.3 信息需求分析业务流程中主要涉及了可售卖教材信息,用户基本信息,订单信息。表 1 可售卖教材信息(例子)商家名 书名 ISBN 号 作者 出版社 几成新 售价 备注有路网 复变函数与积分变换9787111297123张建国 李冱岸 主编机械工业6-8 成新26.00 不影响阅读表 2 用户基本信息(例子)昵称 性别 QQ 邮箱 备注黄晓晓 女 110345262 可信表
5、 3 订单信息(例子)订单号 商家名 书名 已买几本 总价36627508089 有路网 Linux 操作系统基础教程(第二版)1 32.00数据分析:根据上面的表格可以得到一些设计数据库用到的属性,具体的属性还可以增加,已方便对数据的查找、删除。31.4 功能需求分析图 1 功能需求分析2 概念结构设计二手教材售卖系统中业务实体包括学生信息,教材信息,用户信息,订单信息,购物车信息,下面将详细介绍这些实体模型的含义。 学生信息:代表一个可在系统中注册的学生实体,其主要属性有学号,班级,学院 二手教材信息:代表一个图书实体,其主要属性有添加到系统中自动生成的序号,售卖该书的卖家账号,卖家昵称,
6、书名,ISBN 号,作者,出版社,几成新,库存量,售价,对二手教材的简单备注 用户信息:代表一个用户实体,其主要属性有用户名(在系统上登记的昵称即可),密码,账号,性别,QQ,邮箱,该用户对自己的简单备注 订单信息:代表一个订单实体,其主要属性有订单号,买家账号,卖家昵称,教材序号,书名,已购买几本,总价 购买车信息:代表一个购物车实体,其主要属性有买家账号,添加到购物车的教材序号4根据上面的实体模型的描述,可以分为这几大实体:学生实体,二手教材实体,用户实体,订单实体,购物车实体。各个实体的 E-R 图 图 2 学生实体属性图 图 3 购物车实体属性图图 4 用户实体属性图图 5 二手教材实
7、体属性图5图 6 订单实体属性图图 7 实体联系图3 逻辑结构设计3.1 E-R图向关系模型的转换此部分把概念结构设计阶段设计好的 E-R 图中实体型与实体间的联系转换为关系6数据库模式,确定这些关系的模式的属性和码。此系统的关系模型如下: 学生表(学号,班级,学院) 用户登录表(账号,密码) 可售卖教材信息表(序号,账号,昵称,书名,ISBN,作者,出版社,几成新,售价,库存量,备注) 购物车(买家账号,教材序号) 用户订单信息(订单号,买家账号,教材序号,商家名,书名,已购几本,总价) 用户基本信息表(账号,昵称,性别,QQ,邮箱,备注)有下划线的属性为主键。3.2 具体关系模型的表格设计
8、在 SQL Server2012 中新建一个名为二手教材售卖系统的数据库,并启用 SQL Server 身份验证,用户为 sa,然后具上面的分析创建 6 个表格,6 个表格的具体设计如下:表 4 学生表字段名 字段类型 是否允许为空 是否为主键 说明学号 char(12) 不允许 是 学生的学号班级 varchar(10) 允许 否 专业加几班学院 varchar(30) 允许 否 学院名表 5 用户登录表字段名 字段类型 是否允许为空 是否为主键 说明账号 char(12) 不允许 是 就是学生的学号密码 varchar(20) 不允许 否 自取字符表 6 用户基本信息表字段名 字段类型 是
9、否允许为空 是否为主键 说明账号 char(12) 不允许 是 注册的账号昵称 varchar(30) 允许 否 自取昵称性别 char(2) 允许 否 只能填男或女QQ varchar(20) 允许 否 用户的 QQ邮箱 varchar(40) 不允许 否 用户的邮箱7备注 varchar(50) 允许 否 用户的备注表 7 可售卖教材信息字段名 字段类型 是否允许为空 是否为主键 说明序号 int 不允许 是 自增属性账号 char(12) 不允许 否 注册的账号昵称 varchar(30) 不允许 否 自取昵称书名 varchar(200) 不允许 否 教材名ISBN varchar(1
10、3) 允许 否 ISBN 号作者 varchar(40) 不允许 否 教材的作者出版社 varchar(50) 不允许 否 教材的出版社几成新 varchar(15) 不允许 否 教材有几成新售价 float 不允许 否 教材的单价库存量 int 不允许 否 教材存量备注 varchar(50) 允许 否 关于教材的备注表 8 用户订单信息字段名 字段类型 是否允许为空 是否为主键 说明订单号 int 不允许 是 自增属性买家账号 char(12) 不允许 否 买家的账号教材序号 int 不允许 否 教材的序号商家名 varchar(30) 不允许 否 教材的出处人书名 varchar(200
11、) 不允许 否 教材名已购几本 int 不允许 否 已买了几本该书总价 float 不允许 否 买该书用多少钱表 9 购物车字段名 字段类型 是否允许为空 是否为主键 说明买家账号 char(12) 允许 否 买家的账号教材序号 int 允许 否 教材的序号4 数据库物理结构设计4.1表间的联系设计8图 8 表间联系图4.2 数据库完整性设计按照实体之间的联系,本次设计的数据库的表中用户登录表中账号必须是学生表中的学号,因为只有在校登记过的学生取得学号后才能使用本系统;可售卖教材信息表中的账号又必须是用户登录表的已有的账号,即一定是注册后才能在本系统进行教材的售卖;用户基本信息表中的账号也是一样的,必须是注册后才能在填写用户信息;购物车中的教材序号要是可售卖教材信息表中的序号;用户订单信息表中相应的教材序号也必须是可售卖教材信息表中曾经出现过的序号,为了数据库的完整性,有设计一个触发器,使得可售卖教材信息表中一旦教材被售完就删除购物车中的记录,其他的账号必须是学号的限制可以在设计表时指定级联删除,下面是一些创建表的 SQL 语句和触发器。(1)创建用户登录表的的 SQL 语句为:create table 用户登录表