第七组叶进网站数据库设计说明书.doc
数据库设计说明书数据库设计说明书1 引言1.1 目的a.数据库的表结构设计是整个项目开发中一个非常重要的环节,一个良好的数据库设计,可以提高开发效率,方便系统维护,并且为以后项目功能的扩展留下余地。我们通过书写这份文档说明,从各方面进行山桐子网站系统的数据库设计规划,用它指导该系统在数据库各方面的内容,为系统开发的程序员、系统分析员提供基准文档。我们也希望通过写数据设计说明书,规范数据名称、数据范围、数据代码等。这份文档是项目小组今后共同作战的基础,有了开发规范、程序模块之间和项目成员之间的接口规则、数据方式,大家就有了共同的工作语言、共同的工作平台,使整个软件开发工作可以协调有序地进行b.预期读者:项目开发的全体人员,项目评审人员,项目测试人员,指导老师。For personal use only in study and research; not for commercial use1.2 背景说明:a.待开发的数据库的名称:山桐子网站数据库;b.数据库的软件系统的名称:SQL;c.软件系统开发项目的任务提出者:进哥;d.用户:山桐子能源公司的管理人员和所有顾客;e.安装该软件和这个数据库的计算机:lv1101.4 参考资料列出有关的参考资料:a.山桐子网店提供的货品管理流程文件;b.山桐子网店的货物信息;c.经核准的用户合同、用户需求说明书和项目开发委托合同书;d.数据库设计说明书(GB856788);e.山桐子网站系统数据库设计说明书.doc 网络11101班第七小组2 外部设计2.1 标识符和状态详细说明用于唯一地标识该数据库的代码、名称或标识符,附加的描述性信息亦要给出。若该数据库属于尚在实验中、尚在测试中或是暂时使用的,则要说明这一特点及其有效时间范围。示例:数据库标示符:Shuantong用户名:root密码:root权限:全部有效时间:开发阶段说明:系统正式发布后,可能更改数据库用户/密码,请在统一位置编写数据库连接字符串,在发行前请予以改正。2.2 使用它的程序列出将要使用或访问此数据库的所有应用程序,对于这些应用程序的每一个,给出它的名称和版本号。2.3 约定陈述一个程序员或一个系统分析员为了能使用此数据库而需要了解的建立标号、标识的约定,例如用于标识数据库的不同版本的约定和用于标识库内各个文卷、记录、数据项的命名约定等。a. 字符集采用 UTF-8,请注意字符的转换。a. 所有数据表第一个字段都是系统内部使用主键列,自增字段,不可空,名称为:id,确保不把此字段暴露给最终用户。c. 除特别说明外,所有字符串字段都采用varchar(50) 类型,(无论汉字还是英文,都算一个字符)。d. 除特别说明外,所有小数的字段都采用 decimal(13,3) 的形式表达。e. 除特别说明外,所有日期格式都采用 date 格式,无时间值。f. 除特别说明外,所有整形都采用 int 格式。g. 除特别说明外,所有字段默认都设置为 null 。2.4 支持软件简单介绍同此数据库直接有关的支持软件,如数据库管理系统、存储定位程序和用于装入、生成、修 改、更新数据库的程序等。说明这些软件的名称、版本号和主要功能特性,如所用数据模型的类型、允许 的数据容量等。列出这些支持软件的技术文件的标题、编号及来源。示例:管理员工具:MySQL Administrator Windows/Linux查询浏览工具:Navicat 8.0 for MySql Windows/Linux命令行工具:mysql开发客户端:Navicat 8.0 for MySql3结构设计3.1概念模型(1)需求分析基于系统的功能表和流程图,经过分析后确定系统应具备那些方面的数据项和数据结构。 (2) E-R示意图依据用户需求的客观反映,根据应用的需求,反映每个应用需求的ER图(确定实体、属性和联系的类型),以及实体与实体间的关系ER图,然后优化初始的ER图,消除冗余和可能存在的矛盾。a.“山桐子网站购物系统”需求的ER示意图包括实体与实体间的关系ER图商品用户购买名称价格简介管理管理员添加删除修改用户名密码日期数量总价格用户号密码姓名地址电话邮箱1nmnb.“山桐子网站新闻系统”需求的ER示意图包括实体与实体间的关系ER图访问日期期新闻浏览者浏览标题日期作者管理管理员添加删除修改用户名密码访问次数1nmnc.“山桐子网站科技文献系统”需求的ER示意图包括实体与实体间的关系ER图访问日期期科技文献浏览者浏览标题日期作者管理管理员添加删除修改用户名密码访问次数1nmn内容d.“山桐子网站科技人才管理系统”需求的ER示意图包括实体与实体间的关系ER图访问日期期理念、动态浏览者浏览内容日期发布者管理管理员添加删除修改用户名密码访问次数1nmn3.2 数据模型科技文献表j_kc标识id文献名kc_name文献编号kc_no文献作者kc_teacher文献数量kc_Num文献参考书kc_scr科技内容表j_context标识id文献编号kc_no文献标题kc_title文献类型kc_type文献内容kc_context文献参考书kc_scr 会员资料表(LS_User)UserName 会员名称UserPwd 会员密码Sex 性别PwdQuiz 提示问题PwdResult 回答问题UserID 会员编号Email 电子邮箱 EnrolDate 会员注册日期RealityName 真实姓名UserTel 用户联系电话Integral 用户联系地址UserQQ 用户QQIntegral 积分Auditing 审核Remark 备注会员列表(H_User)UserID 会员编号UserName 会员名称UserPwd 会员密码产品展示表(LS_Product)ProductID 产品编号ProductName 产品名称ProductUrl 产品图片地址ProductAbout 产品介绍ProductKey 产品关键字ClassID 产品类型ProductDate 产品上传日期ProductClick 点击数Commend 产品推荐Auditing 产品审核PNew 热门PPrice 产品价格Unit 产品单位PCome 产品上市时间PModel 产品型号Remark 产品备注PYieldly 产品生产地产品分类表(LS_Product)ClassID编号ClassName 分类名称Remark 备注3.3数据库逻辑结构设计说明原始数据进行分解、合并后重新组织起来的数据库全局逻辑结构,包括所确定的关键字和属性、重新确定的记录结构和文卷结构、所建立的各个文卷之间的相互关系,形成本数据库的数据库管理员视图。1、会员资料表(LS_User)列名数据类型约束条件空/非空描述UserIDIntPKNot null会员编号(默认为1,自动增)UserNameVarchar(50)Not null会员名称UserPwdVarchar(50)Not null会员密码SexIntNot null性别(1:男,0:女 默认为0)PwdQuizVarchar(50)Not null提示问题PwdResultVarchar(50)Not null回答问题EmailVarchar(100)Null电子邮箱EnrolDateDatetimeNot null会员注册日期(默认为当前日期)RealityNameVarchar(50)Null真实姓名UserTelVarchar(50)Null用户联系电话IntegralVarchar(200)Null用户联系地址UserQQVarchar(30)Null用户QQIntegralIntNot null积分(默认为0)AuditingIntNot null审核(默认为0不审核,1为审核)RemarkTextNull备注2、公告表(LS_Affiche)列名数据类型约束条件空/非空描述AffIDIntPKNot null编号(默认为1,自动增)AffTitleVarchar(200)Not null公告标题名称AffTextTextNot null公告标题内容AffDateDateTimeGettime()Not null公告发布时间(默认为当前时间)AffNameIntFK LS_Admin(AdminID)Not null公告发布人(默认为当前进入后台管理)AffTypeIntNot null公告类型(默认0为全站公告)3、公司介绍表(LS_About)列名数据类型约束条件空/非空描述AboutIDIntPKNot null编号(默认为1,自动增)AboutTitleVarchar(200)Not null公司介绍标题AboutTextTextNot null公司介绍内容AboutDateDateTimeNot null公司介绍时间(默认为当前时间)AboutPirVarchar(50)Null上传图片地址4、管理员表(LS_Admin)列名数据类型约束条件空/非空描述AdminIDIntPKNot null管理员编号(默认为1,自动增)AdminNameVarchar(50)Not null管理员名称AdminPwdVarchar(50)Not null管理员密码SexIntNot null性别(1:男,0:女 默认为0)EmailVarchar(100)Not null电子邮箱EnrolDateDatetimeNot null管理员日期(默认为当前日期)RealityNameVarchar(50)Null真实姓名UserTelVarchar(50)Not null管理员联系电话IntegralVarchar(200)Null管理员联系地址AdminQQVarchar(30)Null管理员QQRemarkTextNull备注5、新闻表(LS_News)列名数据类型约束条件空/非空描述NewsIDIntPKNot null新闻编号(自动增, 默认为1)NewsTagIntNull图文标示NewsTitleVarchar(200)Not null标题(标题可以提供不同颜色)OriginVarchar(50)Null来源PensterVarchar(50)Null作者ClickIntNot null点击数(默认为0,后台可自由设置)KeyWordVarchar(100)Null关键字IntroTextNull文章导读ConTextTextNot null内容TypeIDIntFK LS_NewsType(TypeID)Not null新闻类别(分不同类型的新闻)TypeNameVarchar(50)Not null分类名称NewsDateDatatimeNot null日期(发布的时间,默认为当前时间)ImagesUrlVarchar(200)Null上传图片地址NNewIntNot null热门(默认为0不热门, 热门为1)RollIntNot null滚动(默认为0不滚动, 滚动为1)AuditingIntNot null审核(默认为0不推荐, 审核为1)EditVarchar(50)Null责任编辑NewTaxisIntNull排序(上移记录,下移记录)SendNameVarchar(50)FK LS_Admin(AdminName)Not null发布信息人6、产品展示表(LS_Product)列名数据类型约束条件空/非空描述ProductIDIntPKNot null产品编号(默认为1,自动递增)ProductNameVarchar(200)Not null产品名称ProductUrlVarchar(200)Null产品图片上传地址ProductAboutTextNull产品介绍ProductKeyVarchar(100)Null产品关键字ProductDateDatetimeNot null产品上传日期(默认为当前时间)ProductClickIntNot null点击数(默认为0,后台可自由设置)CommendIntNot null产品推荐(默认为0不推荐,1为推荐)AuditingIntNot null产品审核(默认为0审核,1不为审核)ProductTopIntNot null固顶(默认为0不固顶, 固顶为1)PNewIntNot null热门(默认为0不热门, 热门为1)RollIntNot null滚动(默认为0不滚动, 滚动为1)ProductTaxisIntNull产品排序(上移记录,下移记录)SendManIntFK LS_Admin(AdminID)Null产品上传人PPriceMoneyNull产品价格UnitVarchar(50)Null产品单位PComeDatetimeNot null产品上市时间(默认为上传时间)PModelVarchar(50)Null产品型号RemarkTextNull产品备注PYieldlyVarchar(200)Null产品生产地ClassIDIntFK LS_ProductClass(ClassID)Not null产品类型SpecialIntNot null产品特价(默认为0不特价,1为特价)7、产品分类表(LS_ProductClass)列名数据类型约束条件空/非空描述ClassIDIntPKNot null编号(默认为1,自动增)ClassNameVarchar(50)Not null分类名称ParentIntNot null父类IDRemarkTextNull备注9、友情链接表(LS_Friend)列名数据类型约束条件空/非空描述LinkIDIntPKNot null友情编号(默认为1,自动递增)LinkNameVarchar(100)Null网站名称LinkAUrlVarchar(200)Null网站地址LogoUrlVarchar(200)Null网站LOGO (宽:88高:31)保存地址LinkIntroTextNull网站介绍LinkDateDatetimeNull上传日期(默认为当前时间)LinkClickIntNull点击数CommendIntNull推荐站点AuditingIntNot null审核(默认为0不审核,1为审核)TaxisIntNull排序(上移,下移)10、人才招聘表(LS_Jobs)列名数据类型约束条件空/非空描述JobsIDIntPKNot null编号(默认为1,自动增)JobsNameVarchar(50)Not null招聘对象名称JobsManIntNot null招聘人数JobsLocusVarchar(200)Not null工作地点JobsPayVarchar(50)Null工薪AcadVarchar(50)Null学历EnrolDateDatetimeNot null发布日期(默认为当前日期)JobsDayIntNull有效天数JobsTextTextNull招聘要求JobsMobileVarchar(50)Null联系手机JobsTelVarchar(50)Null联系电话NameVarchar(50)Not null联系人RemarkTextNull备注11、在线留言表(LS_GuestBook)列名数据类型约束条件空/非空描述LeaveIDIntPKNot null编号(默认为1,自动递增)UserIDIntFK LS_Users(UserID)Not null留言人LeaveTitleVarchar(100)Not null留言标题LeaveTextVarchar(500)Not null留言内容LeaveDateDateTimeNull留言时间(默认为当前时间)AdminIDIntFK LS_Admin(AdminID)Null管理员回复编号RestoreTextVarchar(500)Null回复内容RestoreDateDateTimeNull回复时间(默认为当前时间)4数据库物理设计实现 (1) 根据以上的逻辑分析得到表的关系,运用SQL命令设计得到数据库、数据结构表、数据模似记录的代码。 (2) 设计访问数据的相关方法。(3) 建立系统程序员视图数据在内存中的安排,包括对索引区、缓冲区的设计;以及所使用的外存设备及外存空间的组织,包括索引区、数据块的组织与划分;Create database test;use test;create table LS_User ( id int AUTO_INCREMENT,UserID Int Not null,UserName Varchar(50) Not null,UserPwd Varchar(50) Not null,Sex Int Not null,PwdQuiz Varchar(50) Not null,PwdResult Varchar(50) Not null,Email Varchar(100) Null,EnrolDate Datetime Not null,RealityName Varchar(50) Not null,UserTel Varchar(50) Not null,SignWord Varchar(50) Not null,Integral Int Null,UserQQ Varchar(30) Null,Grade Int Not nullAllMoney Money Not null,How Int Not null,Integral Int Not null,Auditing Int Not null,Remark Text Null, constraint PK_REG_USER primary key (UserID);Create database test;use test;create table LS_Affiche ( id int AUTO_INCREMENT,AffID Int Not null,AffTitle Varchar(200) Not null,AffText Text Not null,AffDate DateTime Not null,AffName Int Not null,AffType Int Not null, constraint PK_REG_USER primary key (AffID);Create database test;use test;create table LS_ About ( id int AUTO_INCREMENT,AboutID Int Not null,AboutTitle Varchar(200) Not null,AboutText Text Not null,AboutDate DateTime Not null,AboutPir Varchar(50) Null, constraint PK_REG_USER primary key (AboutID);Create database test;use test;create table LS_ Admin ( id int AUTO_INCREMENT,AdminID Int Not null,AdminName Varchar(50) Not null,AdminPwd Varchar(50) Not null,Sex Int Not null,Email Varchar(100) Not null,EnrolDate Datetime Not null,RealityName Varchar(50) Null,UserTel Varchar(50) Not null,Integral Varchar(200) Null,AdminQQ Varchar(30) Null,Remark Text Null,constraint PK_REG_USER primary key (AdminID);Create database test;use test;create table LS_ News ( id int AUTO_INCREMENT,NewsID Int Not null,NewsTag Int Null,NewsTitle Varchar(200) Not null,Origin Varchar(50) Null,Penster Varchar(50) Null,Click Int Not null,KeyWord Varchar(100) Null,Intro Text Null,ConText Text Not null,TypeID Int Null,TypeName Varchar(50) Not null,NewsDate Datatime Not null,ImagesUrl Varchar(200) Null,NNew Int Not null,NewsTop Int Not null,Roll Int Not null,Auditing Int Not null,Edit Varchar(50) Null,NewTaxis Int Null,SendName Varchar(50) Not null,SendSign Int Not null,constraint PK_REG_USER primary key (id);Create database test;use test;create table LS_ Product ( id int AUTO_INCREMENT,ProductID Int Not null,ProductName Varchar(200) Not null,ProductUrl Varchar(200) Null,ProductAbout Text Null,ProductKey Varchar(100) Null,ProductDate Datetime Not null,ProductClick Int Not null,Commend Int Not null,Auditing Int Not null,ProductTop Int Not null,PNew Int Not null,Roll Int Not null,ProductTaxis Int Null,SendMan Int Null,PPrice Money Null,Unit Varchar(50) Null,PCome Datetime Not null,PModel Varchar(50) Null,Remark Text Null,PYieldly Varchar(200) Null,ClassID Int Not null,PShow Int Not null,Special Int Not null,constraint PK_REG_USER primary key (NewsID);Create database test;use test;create table LS_ProductClass ( id int AUTO_INCREMENT,ClassID Int Not Null,ClassName