在系统开发时我们首先是要根据需求分析来对系统进行UML建模,然后根据建立的UML的模型来编程、开发系统。这个过程看似很正确但却疏忽了系统开发的一个重要环节——建立数据库。

什么时候建立数据库,怎么建立数据库?建立数据库的方法有很多种,第一我们可以根据需求分析文档,分析系统所要储存的数据然后在根据数据库三范式来建立数据库;第二根据需求分析文档建立系统的E-R模型,然后再根据E-R模型建立数据库;第三建立UML模型,根据UML模型中类图中的关联关系将实体类映射到数据库中从而建立数据库。所以如果我们采用前两中方法建立数据库完全可以根据需求分析文档以及目标软件的功能分析在建模之前建立数据库,但这样需要我们为了建立数据库而单独分析数据是不是符合三范式、数据库中的数据是否具有冗余数据或去建立系统的E-R模型。而如果采用第三种方法的话在建立UML模型之后我们可以直接利用类图中类与类之间的关联关系将实体类映射到数据库,与前两种方法相比省去了数据分析和E-R模型的建立。

面向对象方法中的数据库设计:http://blog.csdn.net/coffeewoo/article/details/5291582?reload

版权声明:本文为博主原创文章,未经博主允许不得转载。

什么时候建立数据库,怎么建立数据库?相关推荐

  1. ftp无法与服务器建立连接_建立与Oracle数据库服务器连接的两种连接模式

    建立与Oracle数据库服务器连接的两种连接模式(专用服务器与共享服务器) 在建立Oracle数据库的时候,应该会在数据库建立助手向导上面看到这么一个选项,就是数据库的连接模式采用什么方式.在Orac ...

  2. 使用独立mysql_MYSQL建立独立数据库以及独立数据库用户详细教程,利用PHPstudy自带的MySQL-Front...

    帮不少客户安装了PHPstudy,虽然建站上面非常简单明了,但是还是很多小白不清楚如何建立数据库,里面自带了快速创建数据库,但那只是创建了数据库,并未创建独立的数据库用户名,不太合适.下面介绍的是通过 ...

  3. Netflix:为什么建立专门的媒体数据库?

    本文解释了Netflix建立专门的媒体数据库的原因,包括精准的用户推荐,极致的编码以及更高效的实现创意. 文 / Rohit Puri 译 / 王月美 原文:https://medium.com/ne ...

  4. 连接数据库是显示无法连接到服务器,如何解决出现无法与数据库服务器建立连接的方法...

    <如何解决出现无法与数据库服务器建立连接的方法>由会员分享,可在线阅读,更多相关<如何解决出现无法与数据库服务器建立连接的方法(6页珍藏版)>请在人人文库网上搜索. 1.如何解 ...

  5. Android项目中,在一个数据库里建立多张表

    一,创建一个公共的DBAdapter; 为了在整个程序运行期间调用该公共的数据库,我们定义了一个扩展自Application的CommDB类: 1,创建唯一的数据库: 1 public class C ...

  6. 数据库正确建立索引以及最左前缀原则

    数据库正确建立索引以及最左前缀原则 转自:https://blog.csdn.net/zhanglu0223/article/details/8713149 1. 索引建立的原则 用于索引的最好的备选 ...

  7. mysql 独立用户,MYSQL建立独立数据库以及独立数据库用户详细教程(PHPstudy MySQL-Front)...

    帮不少客户安装了PHPstudy,虽然建站上面非常简单明了,但是还是很多小白不清楚如何建立数据库,里面自带了快速创建数据库,但那只是创建了数据库,并未创建独立的数据库用户名,不太合适.下面介绍的是通过 ...

  8. 如何构建自己的云数据库?建立云数据库是否要收费?

    云数据库可以帮助企业或个人存储海量数据,同时也可以进行相应的管理,是非常高效的服务.由于大多数人对云数据库相关服务并不了解,也不知道如何建立自己的云数据库,因此导致大量数据丢失.下面就让小杜来跟大家介 ...

  9. 建立“图书_读者”数据库及如下 3 个表,并输入实验数据,用 SQL 语句实现如下五个查询(opengauss)

    建立"图书_读者"数据库及如下 3 个表,并输入实验数据,用 SQL 语句实现如下五个查询(opengauss) 题目所涉及的表如下 注:使用opengauss与HeidiSQL: ...

  10. 添加远程连接 Linux数据库与Navicat数据库建立连接

    登录数据库:mysql -u root -p   输入密码 依次执行下面命令 use mysql;update user set host='%' where user='root';GRANT AL ...

最新文章

  1. java_oop_接口
  2. api接口参数加密_解决API接口开发安全性的四种方案
  3. 专为Android加载图片Fresco:详细图解SimpleDraweeView加载图片基础
  4. SQL自动流水号函数
  5. 搭建微服务_快速搭建 SpringCloud 微服务开发环境的脚手架
  6. 获取当前元素是第几个点击值
  7. Spring动态代理机制理解
  8. 【个人项目总结】四则运算生成器
  9. 使用FastReport 3.0及以上版本创建动态报表的几个技巧(转)
  10. linux 查看进程关系树
  11. Strom 可定制任务调度策略(Pluggable Scheduler)
  12. 怎样在线制作gif表情包?教你快速制作gif表情包
  13. c# ascii转换方法
  14. 修改Docker默认安装路径
  15. 私有云 虚拟服务器 区别,虚拟主机介绍 虚拟主机是不是私有云
  16. Manjaro 安装搜狗中文输入法
  17. python xlsxwriter库生成图表的应用
  18. Docker安装Oracle_11g的方法
  19. ALA创世发行!蝰蛇实验室开启全球数据战略布局
  20. python免费对接快递鸟api单号识别查询接口

热门文章

  1. Spring源码解析十
  2. 谷歌人工智能责任:技术、人工智能、社会和文化 | Responsible AI at Google Research: Technology, AI, Society and Culture
  3. 解读这40项IT技能都能帮你年薪超过12万美元
  4. 有关Word 2003中制表符和制表位
  5. C语言浙江省阶梯电价
  6. 你准备会计初级并通过考试用了多久?
  7. 【嵌入式04.2】STM32F103C8T6的简易流水灯仿真(寄存器实现+STM32CubeMX实现)
  8. 在Ubuntu上用cups api实现打印功能
  9. 安卓实现ECG心电图功能
  10. 学生选课管理系统 jsp + servlet + mysql (2021)