哈尔滨工业大学成人教育专升本 计算机科学与技术专业毕业论文 网上拍卖系统
3.2 概要设计
系统分为前台和后台两个模块,前台主要用来提供给系统注册用户或者游客浏览、查看商品,并提供注册的模块,系统注册用户通过登录后还能管理自己的信息和对指定的商品参与竞拍。
后台是系统管理员对拍卖系统设置、管理用户和管理商品的地方。 系统的系统层次概框划分如图3-2所示。
网上拍卖系统
注册 登录 管理商品 浏览流拍物品 管理商品种类 查看竞得物品 浏览拍卖物品 查看自己的竞标 添加商品 添加商品分类 查看物品详细信息 参加 商品竞拍 3-2 系统层次概框图
16
哈尔滨工业大学成人教育专升本 计算机科学与技术专业毕业论文 网上拍卖系统
第4章 数据库设计
4.1 数据库需求分析
在网上拍卖系统中有很多类,包括边界类、控制类、和实体类。数据库设计首先要找出需要持久保存的类,即实体类。在“网上拍卖系统”中,通过分析可得到实体类有:用户类AuctionUser、商品分类类Kind、用户出价信息类Bid、商品类Item、商品状态类 State。
各个实体类之间的关系图如图4-1所示:
图4-1 实体类关系图
根据系统的需求,数据库中需要创建以下数据表。
① 用户信息表:用于存放注册用户的资料以及用户登录情况。 ② 商品分类信息表:商品的主要分类,和分类信息的描述。 ③ 商品信息表:记录用户发布的商品的信息。
④ 用户出价信息表:用于记录用户对相关商品的出价信息。 ⑤ 商品状态信息表:用于存放商品状态信息。
17
哈尔滨工业大学成人教育专升本 计算机科学与技术专业毕业论文 网上拍卖系统
4.2 数据库逻辑设计
数据库需求分析设计完毕后,现在可以将上面的需求分析转化为数据库系统所支持的实际数据模型,也就是数据库的逻辑结构,可以作出各表。
网上拍卖系统数据库中各个表的设计结果如下面的表格所示。每个表格表示在数据库中的一个表。
如表4-1所示为用户信息表,记录了系统中所有用户的详细信息。 表中user_id为主键并被设置为IDENTITY (1, 1),这样当插入一条记录且user_id字段的数据为空(null)时,新记录的user_id值将由系统自动给出,且给出的值将比表中曾经曾在的最大的user_id值在1(若是一张新表,则从1开始)。这样可以保证整个表中的user_id字段在其数据类型允许的范围之内没有重复的值。
表4-1 auction_user用户信息表
Field user_id username password email Type int varchar varchar varchar Null - - - - Key PRI - - - Default - - - - Comment 用户标识 用户名 用户密码 用户邮箱
如表4-2所示为商品分类信息表,记录了所有商品分类的信息。
表4-2 kind商品子分类信息表
Field kind_id kind_name kind_desc Type int varchar int Null - - Yes Key PRI - - Default - - - Comment 分类的标识 分类的名称 分类的描述
如表4-3所示为记录用户所发布的商品的详细信息的表。
表中item_id为主键设为自动增长。owner_id为auction_user表中user_id的外键,kind_id为kind表中kind_id的外键,csub为subsort表中ssid的外键,这些外键能保证商品的完整性。cend表示商品的拍卖是否已经结束。
18
哈尔滨工业大学成人教育专升本 计算机科学与技术专业毕业论文 网上拍卖系统
表4-3 item商品信息表
Field item_id owner_id item_name kind_id item_pic item_desc winer_id addtime endtime init_price max_price state_id Type int int varchar int varchar varchar int date date double double int Null - - - - Yes Yes Yes - - - - - Key PRI FK - FK - - FK - - - - - Default - - - - - - - - - 0 0 - Comment 主键,递增 发布者的标识 商品名称 商品分类 商品图片地址 商品描述 拍买者的标识 开始日期 结束日期 初始价钱 最高价钱 商品状态
如表4-4所示为记录用户对商品出价情况的信息表。 表中bid_id为主键设为自动增长。item_id为商品表item中item_id的外键,这样可以保证用户的出价都是针对已经发布的商品发出的。user_id为出价的用标识。howmuch代表用户对此商品出了多少钱。
表4-8 bid用户出价信息表
Field bid item_id user_id bid_date bid_price Type int int int date double Null - - - - - Key PRI FK - - - Default - - - - - Comment 出价的标识 对就的商品标识 出价的用户名 出价的时间 出了多少钱
19
哈尔滨工业大学成人教育专升本 计算机科学与技术专业毕业论文 网上拍卖系统
如表4-5所示为记录用户发布的商品的状态的信息表。 表中state_id为主键设为自动增长。
表4-5 state用户出价信息表
Field state_id state_name Type int varchar Null - - Key PRI - Default - - Comment 商品状态的标识 商品状态的名称
20