数据库设计心得博客
作者:软件1803班-还不知道叫什么对队-李俊
一、 数据库设计前准备
1、概念的理解:
完成了需求分析后,我们小组先对数据库的概念进行了初步了解,数据库是计算机应用系统中的一种专门管理数据资源的系统。数据有多种形式,如文字、数码、符号、图形、图像以及声音等。数据是所有计算机系统所要处理的对象。人们所熟知的一种处理办法是制作文件,即将处理过程编成程序文件,将所涉及的数据按程序要求组织成数据文件,用程序文件来调用。数据文件与程序文件保持着一定的对应关系。在计算机应用迅速发展的情况下,这种文件式方法便显出不足。比如,它使得数据通用性差,不便于移植,在不同文件中存储大量重复信息、浪费存储空间、更新不便等。数据库系统便能解决上述问题。数据库系统不从具体的应用程序出发,而是立足于数据本身的管理,它将所有数据保存在数据库中,进行科学的组织,并借助于数据库管理系统,以它为中介,与各种应用程序或应用系统接口,使之能方便地使用数据库中的数据。
也就是说数据库是"按照数据结构来组织、存储和管理数据的仓库",在经济管理的日常工作中,常常需要把某些相关的数据放进这样"仓库",并根据管理的需要进行相应的处理。
2、数据库管理系统的使用:
数据库管理系统(Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。
数据库管理系统分关系数据库和非关系数据库。这里我们采用关系数据模型,关系数据库是创建在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。几乎所有的数据库管理系统都配备了一个开放式数据库连接(ODBC)驱动程序,令各个数据库之间得以互相集成。
这里我们采用其中的典型代表MySQL。同时数据库的架构可以大致区分为三个概括层次:内层、概念层和外层。内层:最接近实际存储体,亦即有关数据的实际存储方式。外层:最接近用户,即有关个别用户观看数据的方式。概念层:介于两者之间的间接层。
3、工具的使用
在这里,我们使用可以通过可视化界面操作的powerdesigner来进行数据库的设计。
二、 数据库设计操作部分
1、确定实体
表的创建部分,我们需要确定所需的实体,包括了字段名、数据类型和主键的设计。在这里首先必须弄清楚表中列的数据类型,是character、varcharacter、integer、datetime、shortint 等什么数据类 型,数据长度时几个字符,它的值是否能为空。主键的设置在表的建立时也许勾选上。在这里,我们把每个出现在表中的数据都先统一命名放在一个word文档中,随着每个部分表的建立,不断的对文档中的各个数据的名称类型长度进行修改。
(1)专业(major):专业编号,专业名称
(2)学院(Academy):学院名称,学院编号
(3)个人信息(UserInfo):用户编号,姓名,手机,邮箱,身份,昵称,头像,信用积分
(4)信用积分增减记录(CreditChange):记录编号,记录类型
(5)设备(device):设备编号,设备名称,型号,场地,图片,设 备状态,设备情况,借用次数,申请人数
(6)设备保管人(keeper):保管人编号,保管人姓名,保管人联系方式
(7)评论(comment):评论内容,评论编号
(8)借用记录(orderHistory):预约日期,类型,借用时间起始,借用时间终止,归还地点,交易编号,预约状态,归还时间,归还状态
(9)消息(message):时间,标题,内容
(10)反馈(feedback):反馈内容,反馈时间,反馈回复
2、确定联系
通过对不同实体的分析,我们可得知
(1) 学院表与专业表之间(1:N);
(2) 学院表与设备表之间(1:N);
(3) 专业表与个人信息表之间(1:1);
(4) 个人信息表与反馈表之间(1:N);
(5) 个人信息表与信用积分增减记录表之间(1:N);
(6) 个人信息表与评论表之间(1:N);
(7) 个人信息表与反馈表之间(1:N);
(8) 个人信息表与消息表之间(1:N);
(9) 个人信息表与借用记录表之间(1:N);
(10) 设备表与设备保管人表之间(N:1);
(11) 设备表与评论表之间(1:N);
(12) 设备表与借用记录表之间(1:N);
(13) 设备表与借用记录表之间(1:N);
3、建立CDM(概念模型)
4、建立PDM(物理模型)
5、建立E-R 图
E-R 模型能够方便地模拟研究对象的静态过程。 E-R ,即实体 -联系方法, E-R 图直观提供了表示实体型、属性和联系的方法。在画 E-R 图过程中,必须明确识别实体、属性和联系, 用矩形、椭圆和菱形对应框出来。用“矩形框”表示实体型,矩形框内写明实体名称;用“椭圆图框”或圆角矩形表示实体的属性,并用“实心线段”将其与相应关系的“实体型”连接起来;用”菱形框“表示实体型之间的联系成因,在菱形框内写明联系名,并用”实心线段“分别与有关实体型连接起来,同时在”实心线段“旁标上联系的类型(1:1,1:n或m:n)。
三、 数据库设计总结
在这次项目设计中,我们小组的设计一个校园设备借用系统的数据库,这对我们来说是一次尝试与创新的过程, 也可以说是一个挑战的过程。 虽然通过数据库课堂的学习,我们已经初步了解数据库的运行和储存等方面,但是我们实际操作经验不足。 对于这一次利用所学知识对校园设备借用系统的数据库进行设计,大家都很兴奋,可以把知识真正的转化为自己的生产力。小组成员们都不同程度的投入了很高的热情与努力。
在具体的设计与实施中,小组的成员们齐心协力,共同把一个管理系统的数据库从零开始建立起来。遇到对具体的设计步骤的思路和方法意见不同时,都进行了或激烈或冷静的思考,数据库设计技巧都有了进一步的了解,并感受深刻。
这次课程设计加深了我们对数据库系统设计相关知识以及 SQL SERVER相关功能的理解。比如在建立基本的表、视图、索引、存储过程、触发器等,都比以前更加熟悉了,并在解决各种问题的过程中学到了很多新的知识;并且经过小班讨论课上老师的指导,我们对校园设备借用系统项目的数据库的模型有了更合理的设想,从而顺利的完成了数据库的优化设计,小组的成员们都获益匪浅。