数据库基础知识----数据库大观
这里写目录标题绪论发展历程数据模型三层模式两层映像基本概念关系数据库简介基本术语关系模型组成数据结构数据操纵数据完整性规则关系代数五个基本操作并差笛卡尔积投影π选择四个组合操作交连接除法关系数据库语言----SQL简介SQL数据类型二级目录二级目录一级目录二级目录二级目录二级目录一级目录二级目录二级目录二级目录绪论发展历程人工管理阶段可能数据是存在一个本子上或者什么地方总之不在计算机内而关于他们发展的特点是在逐步优化的首先关于共享性包含是否可以多方同时使用、共享时的并发控制、数据一致性问题、数据的精简性问题不共享–有但共享性较差–共享性高人工阶段不共享因为数据都存在“一个本子”里同一时刻只能有一个人在操作查阅或者修改等等本子的数据其他想查阅的只能排队等待文件阶段虽然数据存在文件里1、可以由同一个计算机中的应用程序多方使用2、但是由于文件没有并发控制无法做到共享时的同步与互斥3、且如果进行文件复制多个副本之间联系弱很难做到修改数据后的实时更新同步4、数据冗余也表明其共享性差多个文件比如文件1员工详细信息文件2员工工资两个文件都有“员工的一些基本信息”当修改基本信息时两个表都会涉及都要修改数据库阶段共享性高可以多方同时使用、共享时也DBMS也提供并发控制、数据一致性问题也会解决、数据也会尽可能精简多表联查而关于独立性是指数据独立性指的是应用程序和数据的相对独立程度。换句话说如果数据逻辑结构或物理存储方式改变程序不需要大幅修改这就是高数据独立性。文件系统阶段---- 程序直接依赖文件名、字段顺序、格式缺乏逻辑/物理独立性数据库阶段---- DBMS 提供逻辑/物理独立性程序通过 SQL 查询访问数据无需关心存储细节最后就是最直观的由无法持久化数据–可以持久化数据–可以持久化数据并有一个系统进行管理数据模型三层模式两层映像1、首先看图片最上方那四个等价说法2、关于三层模式其实就是上面数据模型换了一个说法外模式其实就是外部模型逻辑模式其实就逻辑模型内模式其实就是物理模型关于两级映像很重要他是实现数据库的独立性的关键一个是外模式和逻辑模式之间的映像当逻辑模式改变时对该映像的逻辑模式与逻辑模式对接的方向做出一定的修改就可以保证映射的正常从而不必修改外模式和应用程序逻辑模式和内模式之间的映像同理他们一个实现了逻辑数据的独立性一个实现了物理数据的独立性但是这两个都属于**“数据独立性”**3、重点看上图右上角的图他把前面的“数据模型”都串起来了其中上图中的“多个应用”其实是一个程序的各个分布式服务当前如果脑洞大开也可以让多个应用使用同一个数据库基本概念DDL数据库定义语言DML数据库操作语言DCL数据库控制语言关系数据库简介基本术语1、首先看一般术语与关系模型术语的对应关系其中记录类型**记录类型Record Type**是指 由多个不同类型的数据字段组成的复合数据类型也叫 结构化数据类型。2、元组的个数叫做**“基数”属性的个数叫做“元数”**不要混淆3、属性的取指范围叫做**“域”**每个属性对应一个域不同的属性可以对应同一个域比如籍贯的域全国各地的地名而工作地点的域也可以是全国各地的地名1、关系模式上面已经说了就是一个表所有字段的定义类似于定义一个结构体类型2、而对一个关系模式进行实例化就是一条“元组”许多个元组的集合就是“关系”也就是一张表中记录的集合3、关系模型若干个关系模式的集合1、超建能唯一标识一个元组或者说一条记录的属性或者属性集如T#TNAME教师工号与教师名字的集合其实就是主键其他或者主键自己2、候选键不含多余属性的超建即主键自己3、关于主键即用户自己选择某个属性作为候选键4、外键如上图表述例如COURSE表中的T#是TEACHER表的主键那么T#就被叫做COURSE表的外键即对一个表对应到关系模式称为“关系”的规范·关系模型组成数据结构就是“关系”或者称为“表”数据操纵数据完整性规则分为三部分实体完整性规则、参照完整性规则、用户定义的完整性规则1、实体完整性规则主键非空且唯一2、参照完整性规则外键可以为空或者必须是某个记录的真实的主键即不可用引用不存在的实体3、用户定义的完整性规则由用户定义关系代数五个基本操作并1、前提只有具有**相同的关系模式即相同的表字段定义的关系即表**才可以进行“并”操作2、将记录“并”操作重复的保留一份即可差1、前提只有具有**相同的关系模式即相同的表字段定义的关系即表**才可以进行“差”操作R-S看可以减去R中哪条记录只能减去S中有的并且R中也有的笛卡尔积两个表进行全排列组合投影π挑选若干属性组成新的关系去掉重复行组成新的表选择四个组合操作交1、前提只有具有**相同的关系模式即相同的表字段定义的关系即表**才可以进行“交”操作连接1、连接从笛卡尔积的结果中选取满足条件的元组如RXS 21就是笛卡尔积中左表的第二列等于右表的第一列满足这样的元组组成新表2、或者直观的先进行笛卡尔积然后不再区分左右表而是在最新的表中j变为第一个表的列数j其实与第一个的意思是一样的当符号是等号的话就称为等值连接除法如R除以COURSE1首先在R中找到满足COURSE1的记录然后去掉这些记录的字段组成新表如果所除的表有多条记录则要同时满足这些记录的同一个人才能被选中关系数据库语言----SQL简介关系模式在SQL中对应“基本表”子模式也称 外模式在SQL中对应“视图”存储模式SQL用的是“存储文件”SQL数据类型1、int 四字节smallint 二字节float(n)n表示总精度即这个数的总共几个位dec(p,d)总的位为p个其中小数占d个float 和 dec 的区别float存储时是二进制浮点数可能出现微小误差dec存储时是十进制精确存储FLOAT → 浮动 → 近似 → 科学计算DECIMAL → 精确小数 → 财务场景二级目录二级目录一级目录二级目录二级目录二级目录一级目录二级目录二级目录二级目录
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2482817.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!