首先要复习几个容易混淆概念:
DDL是对表结构的纠正,而DML是对表内值的操作,注意两者区别,不要混淆
还有下面,vachar与char的区别:
varchar (265)-》张三(占用的内存为2字节),如果对张三update,对李四update,这些修改后占用的内存空间并不在一起,形成了大量碎片:因此需要后期的维护,整理这些碎片
char (265)-》张三(占用的内存为256)---浪费了大量的空间
信息系统
Information system:是一个有组织的收集,组织,储存和信息交流系统。更具体地说,是人们和组织用来收集、过滤、处理、创建和分发数据的互补网络的研究
数据库应用程序的生命周期
数据库应用生命周期本质上与信息系统的生命周期相关
他分为以下几个步骤
规划阶段
系统定义:确认哪些系统归我管,哪些不归我管,也就是确定边界(收费系统不知道吃什么东西;非校内人士不得办校园卡)
需求分析:面对哪几种用户,写需求分析报告(类似制图)
数据库设计:
概念:生成概念模型(用ER模型又称实体模型来表达)
包括饭种类的ER模型与不包括饭种类的ER模型不相同,这个饭就是一个实体
逻辑:如何建表,表的定义
物理:表在磁盘上占多大的地方,表建不建索引
三级模式两级印象,逻辑,物理是否与模式和内模式相类似呢
应用设计:界面和类的设计
实现(implemtntation)
数据转换和装载:如果换一个新系统,如何导入
测试
维护:性能调整,优化,重构()
以上只是简单描述生命周期,任何一个环节都能一一展开,一个涉及到数据库的系统,到底包括了哪几个阶段和这几个阶段包含了哪些焦点
规划阶段
管理活动:允许数据库应用程序尽可能高效地实现
家乐福和沃尔玛的小票长得不一样,因为他们后台系统不一样
因此,要确定一些公司使命:
确定战略
设计评估,明确前进方向:奔驰是高端路线,而福特是让汽车走进千家万户
董事长会关注这些东西
规划关注的细节:
数据从哪来
什么格式
有哪些必须的文档
系统定义
描述据库应用程序和主要用户视图的范围和边界
数据库设计
表达数据和联系
能不能通过select语句实现查询功能,如果完不成,那么说明建造的表不合适
模型分为:
概念数据库设计:ER模型
逻辑数据库设计:该有哪些table,以及这些table的属性
物理数据库设计:基表,安全问题等
应用程序设计
The design of user interface and application programs that use and process the database
应用程序设计的过程也是事物设计的过程
事物:作为单个逻辑工作单元执行的一系列操作要么完全地执行,要么完全地不执行
测试
DBA和DA大家还记否
DA:Management of data resource including
DBA:Management of physical realization of a
database application including
物理数据库的设计和实现
数据库的重构
之前模糊的东西,是不是渐渐清晰了呢