欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    IT技术交流论坛数据库设计文档2.docx

    • 资源ID:13945319       资源大小:71.47KB        全文页数:15页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    IT技术交流论坛数据库设计文档2.docx

    1、IT技术交流论坛数据库设计文档2黄淮学院IT技术交流论坛的设计与实现数据库设计说明书版本: 1.0 文档信息及版本历史文档信息项目名称黄淮学院IT技术论坛文档名称黄淮学院IT技术论坛数据库设计说明书存储位置版本作者/修改者日期描述1.0第七小组组员2014/3/26开始撰写文档目录1 引言 21.1 编写目的 21.2 术语表 31.3 数据库命名约定 31.4 参考资料 32 数据库环境说明 33 数据库的命名规则 44 概要设计 45 逻辑设计 46 物理设计 46.1 确定关系模型的存取方法 46.2 确定数据库的存储结构 47 存储过程、函数及触发器的设计 58 安全性设计 58.1

    2、用户帐号密码的加密方法 58.2 角色与权限 59 数据库实施 51 引言1.1 编写目的本文档是黄淮学院IT技术论坛概要设计文档的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,用来指导后期的数据库脚本的开发,本文档遵循黄淮学院IT技术交流论坛数据库设计和开发规范。本文档的读者对象是需求人员、系统设计人员、开发人员、测试人员。1.2 术语表定义系统或产品中涉及的重要术语,为读者在阅读文档时提供必要的参考信息。序号术语或缩略语说明性定义1PMProject Manager,项目经理1.3 数据库命名约定前缀说明PK表示主键UK表示唯一键FK表示外键UI表示唯一索引NU

    3、I表示非唯一索引1.4 参考资料列出有关资料的名称、作者、文件编号或版本等。参考资料包括:1. 需求说明书;2. 本项目的其它已发表的文件;3. 引用文件、资料、软件开发标准等。 资料名称作者文件编号、版本资料存放地点数据库系统概念(美国等)希尔伯沙茨ISBN:9787111234227驻马店市图书馆数据库系统概论王珊,萨师煊著ISBN:9787040195835驻马店市图书馆2 数据库环境说明1. 说明所采用的数据库系统,设计工具,编程工具等2. 详细配置数据库实例数据库管理系统数据库部署环境数据库设计工具数据库存放位置说明BBSSQL Server 2005Window 7系统roseF:

    4、我的文档大三下软件综合实践bbs.mdf存储项目中所涉及的数据3 数据库的命名规则本数据库设计完全按照黄淮学院IT技术论坛数据库设计规范命名。1. 实体(表)的命名1) 表以名词或名词短语命名,定义规则:_表名以开头后面是业务名词或短语表达,不要缩写,多个单词间不加“_”,每个单词的首字母大写其他字母小写。2) 关联类通过用下划线连接两个基本类之后,再加后缀_lk的方式命名。关联表用于保存多对多关系。2. 属性(列)的命名1) 列名的命名规则同表名的命名规则,大小写规则也是单词的首字母大写其他的小写。2)尽量避免使用关键字作为列名,以免一些不必要的错误发生。3)每张表必须至少有一个主键列。4

    5、概要设计4.1主题帖子实体-属性图4.2回帖实体-属性图4.3板块实体-属性图4.4用户实体-属性图 n 1 1 1 n n m 1 n 1 n m5 逻辑设计1. 按照转换原则把概要设计中的E_R图转换成对应的关系表,并进行规范化,要求达到第三范式。2. 设计必要的视图 表5-1 BBSUser(论坛用户表)字段名中文名类型是否为空备注UID用户IDint否主键,自定增长ULevel用户等级int否判断用户等级,如会员、版主、管理员,设定默认值为会员UPassword密码varchar否UName昵称varchar否唯一值UEmail电子邮箱varchar否唯一值UBirthday用户生日d

    6、atetimeUSex用户性别int否表5-2 BBSTopic(帖子表)字段名中文名类型是否为空备注TID发帖IDint否PK自定增长TSID所在版块int否FK(引用版块表的SID)TUID发帖人int否FK(引用版块表的UID)RTID回复帖子IDint否TTitle标题varchar否TContent内容varchar否TPicture发贴照片varcharTTime发帖时间datetime否表5-3 BBSSetion(版块表)字段名中文名类型是否为空备注SID版块IDint否主键 自定增长SName版块名称varchar否SDescription版块简介varcharSUID版主i

    7、nt否FK(引用用户表UID)6 物理设计6.1 确定关系模型的存取方法在实际设计中最常用的存取方法是索引,使用索引可以大大减少数据的查询时间,在建立索引时应遵循:在经常需要搜索的列上建立索引; 在主关键字上建立索引;在经常用于连接的列上建立索引,即在外键上建立索引;在经常需要根据范围进行搜索的列上创建索引,因为索引已经排序,其指定的范围是连续的等规则。才能充分利用索引的作用避免因索引引起的负面作用。数据库物理设计阶段的任务是根据具体计算机系统(DBMS和硬件等)的特点,为给定的数据库模型确定合理的存储结构和存取方法。所谓的“合理”主要有两个含义:一个是要使设计出的物理数据库占用较少的存储空间

    8、,另一个对数据库的操作具有尽可能高的速度。主要体现在后者。(1)建立索引:对帖子表在TID属性列上建立索引。6.2 确定数据库的存储结构确定数据库的存储结构主要指确定数据的存放位置和存储结构,包括确定关系、索引、日志、备份等的存储安排及存储结构,以及确定系统存储参数的配置。7 存储过程、函数及触发器的设计存储过程:在删除发帖中,通过存储过程的方式进行,删除该发帖的回帖和删除该发帖的操作。if exists (select * from sysObjects where name = proc_Topic_Delete)drop proc proc_Topic_Deletegocreate pr

    9、oc proc_Topic_DeleteerrorSum int output, topicID int asset errorSum = 0begin transactionDELETE FROM BBSTopic WHERE TID = topicIDset errorSum = errorSum + errorDELETE FROM BBSTopic WHERE TID = topicIDset errorSum = errorSum + errorif errorSum 0 beginrollback transactionendelsebegincommit transactione

    10、nd触发器:对于复杂业务规则使用触发器,简单的完整性规则通过约束实现。8 安全性设计根据系统需要设计相关用户和角色,并赋予相关操作权限。8.1 用户帐号密码的加密方法用户帐号采用MD5进行数据加密后再录入数据库,以防止任何地方密码的安全性要求。8.2 角色与权限角色可以访问的表与列操作权限管理员可访问所有表完全控制权限版主可以访问主题表发表,删除,浏览,增加主题帖子可以访问回帖表发表,删除,浏览,添加回帖、会员可以访问主题表发表,浏览,添加主题贴可以访问回帖表发表,浏览,添加回帖游客可以访问主题表浏览主题帖子可以访问回帖表浏览回帖9 数据库实施此阶段主要任务包括创建数据库,加载初始数据.1.

    11、创建数据库脚本 CREATE DATABASE bbs ON PRIMARY ( NAME = Nbbs, FILENAME = NF:我的文档大三下软件综合实践bbs.mdf , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB ) LOG ON ( NAME = Nbbs_log, FILENAME = NF:我的文档大三下软件综合实践bbs_log.ldf , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)2. 创建表脚本2.1 BBSUser(论坛用户表)CREAT

    12、E TABLE dbo.BBSUser( UID int IDENTITY(1,1) NOT NULL, ULevel int NOT NULL CONSTRAINT DF_BBSUser_ULevel DEFAULT (1), UPassword varchar(20) NOT NULL, UName varchar(20) NOT NULL, UEmail varchar(50) NOT NULL, UBirthday datetime NULL, USex int NOT NULL CONSTRAINT DF_BBSUser_USex DEFAULT (1), CONSTRAINT PK

    13、_BBSUser PRIMARY KEY CLUSTERED ( UID ASC)WITH (IGNORE_DUP_KEY = OFF) ON PRIMARY) ON PRIMARY2.2 BBSTopic(帖子表)CREATE TABLE dbo.BBSTopic( TID int IDENTITY(1,1) NOT NULL, TSID int NOT NULL, TUID int NOT NULL, RTID int NOT NULL, TTitle varchar(50) NOT NULL, TContent varchar(500) NULL, TPicture varchar(50

    14、) NULL, TTime datetime NOT NULL, CONSTRAINT PK_BBSTopic PRIMARY KEY CLUSTERED ( TID ASC)WITH (IGNORE_DUP_KEY = OFF) ON PRIMARY) ON PRIMARY2.3 BBSSetion(版块表)CREATE TABLE dbo.BBSSection( SID int IDENTITY(1,1) NOT NULL, SName varchar(20) NOT NULL, SDescription varchar(50) NULL, SUID int NOT NULL, CONST

    15、RAINT PK_BBSSection PRIMARY KEY CLUSTERED ( SID ASC)WITH (IGNORE_DUP_KEY = OFF) ON PRIMARY) ON PRIMARY3. 创建视图脚本4. 创建存储过程脚本if exists (select * from sysObjects where name = proc_Topic_Delete)drop proc proc_Topic_Deletegocreate proc proc_Topic_DeleteerrorSum int output, topicID int asset errorSum = 0be

    16、gin transactionDELETE FROM BBSTopic WHERE TID = topicIDset errorSum = errorSum + errorDELETE FROM BBSTopic WHERE TID = topicIDset errorSum = errorSum + errorif errorSum 0 beginrollback transactionendelse begincommit transactionend5. 创建函数脚本CREATEFUNCTIONF_EMAIL ( EMAILVARCHAR(50) ) RETURNSINT-返回1是正确;

    17、返回0是错误 BEGINDECLAREVALUEINT,LENINTDECLARETMPVARCHAR(50) DECLARECHECK1VARCHAR(50) DECLARECHECK2VARCHAR(50) DECLARECHECK3VARCHAR(50) SETTMP=RTRIM(LTRIM(EMAIL) SETLEN=LEN(TMP) IFLEN-LEN(REPLACE(TMP,)=1ANDLEN-LEN(REPLACE(TMP,.,)=1ANDCHARINDEX(,TMP)1 BEGINSETCHECK1=LEFT(TMP,CHARINDEX(,TMP)-1) SETCHECK2=S

    18、TUFF(TMP,1,CHARINDEX(,TMP),) SETCHECK3=STUFF(CHECK2,1,CHARINDEX(.,CHECK2),) SETCHECK2=LEFT(CHECK2,CHARINDEX(.,CHECK2)-1) IFLEN(CHECK1)0andLEN(CHECK2)0ANDLEN(CHECK3)0 BEGINIFPATINDEX(%a-zA-Z0-9._-%,CHECK1)0 SETVALUE=0 ELSEBEGINIFPATINDEX(%a-zA-Z0-9_-%,CHECK2)0 SETVALUE=0 ELSEBEGINIFCHARINDEX(UPPER(CHECK2),UPPER(gmail,QQ,163,sina,yahoo)0 BEGINIFPATINDEX(%a-zA-Z0-9._-%,CHECK3)0 SETVALUE=0 ELSESETVALUE=1 ENDELSESETVALUE=0 ENDENDENDELSESETVALUE=0 ENDELSESETVALUE=0 RETURNVALUE END6. 创建触发器脚本7. 创建索引脚本8. 数据录入脚本


    注意事项

    本文(IT技术交流论坛数据库设计文档2.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开