概念:数据库(DB,Database):批量组织存储和操作数据的仓库。数据仓库是数据库领域中的基本名词,这里指是它常规意义上的含义 数据库管理系统(DBMS,Database Management System):在数据库软件中起到组织管理数据的软件模块 数据库管理员(DBA,Database Ad
概念:数据库(DB,Database):批量组织存储和操作数据的仓库。数据仓库是数据库领域中的基本名词,这里指是它常规意义上的含义
数据库管理系统(DBMS,Database Management System):在数据库软件中起到组织管理数据的软件模块
数据库管理员(DBA,Database Administrator):操纵数据库的管理和维护人员
数据库系统(DBS,Database System):基于数据库的应用系统或软件系统,相对来说出现的频率要低一些
关系型数据库(RDB,Relationship Database):基于关系模型而建立或组织起来的数据库
关系型数据库管理系统(RDBMS):它是目前数据库的主流形式
SQL语言:即Structured Query Language,结构化查询语言。常用SQL指令有SELECT、INSERT、DELETE、UPDATE、CREATE、DROP
SQL是使用关系模型的数据库语言,用于和各类数据库的交互,提供通用的数据管理和查询功能
SQL分类:数据定义语言(DDL,Data Definition Language):如Create、Alter、Drop、Truncate
数据操纵语言(DML,Data Manipulation Language):如Insert、Update、Delete、Merge
数据控制语言(DCL,Data Control Language):如Grant、Revoke
其它语言要素(Additional Language Elements):如事务控制语句:Commit、Rollback、Savepoint
SQL说明:其中Select是最频繁也是最常用的。DBA可以使用DCL进行数据库的管理,而应用开发人员几乎用不到它
数据库简述
管理:第一阶段:手工管理阶段:数据不保存。数据由应用程序管理,编写程序要考虑数据结构
数据面向程序,不共享。数据不具有独立性,随其逻辑结构和物理结构而变化
第二阶段:文件管理阶段:数据共享性差。数据以文件形式长期存在
第三阶段:数据库管理阶段:有利于实现数据共享。数据面向应用,而非面向程序
历程:第一代:非关系型数据库系统:上世纪60年代末问世,包括层次性和网状型
第二代:关系型数据库系统(RDBS):上世纪70年代中期问世。Oracle就是RDBS的代表
第三代:对象—关系数据库系统(ORDBS、OODBS):上世纪80年代中期至今。也称为面向对象的数据库系统,它力图以对象的形式
或者说以对象为单位进行数据的存储和操纵。至目前为止,它还没有推出成熟的产品
分类:网状型数据库:采用以记录类型为结点的网状数据模型。对于这种错综复杂的交织在一起的网而言,,在进行数据检索的时候是非常不方便的
层次型数据库:采用层次模型模拟现实世界中按层次组织起来的事物
关系型数据库:采用二维表结构储存与管理数据,并规定了表内和表间数据的依存关系。当前业界所用的主流数据库几乎都是关系型数据库
当前流行的关系型数据库:Oracle(可算是业界第一名)、IBMDB2、SQL Server、SyBase、Informix(它的公司已被IBM收购)等
关系型数据库采用结构化查询语言(SQL)作为客户端程序与数据库服务器间沟通的桥梁
数据建模
概念:要将现实世界中客观存在的事物以数据的形式存储到计算机中并进行处理,就需要对其进行分析、抽象进而确定数据的结构以及数据间的内在联系,这一过程称为数据建模
要求:能够比较真实地模拟现实世界,容易为人所理解,便于计算机实现
要素:数据结构:描述事物的静态特性
数据操作:描述事物的动态特性
完整性约束:描述事物内部和事物间的约束性关系
续一:现实世界:事物以及事物间的联系是客观存在的
概念世界:是人们对现实世界中客观事物及其联系的认识和抽象
概念世界中按用户的观点对现实世界建模,所得到的“概念数据模型”不依赖具体的计算机系统和DBMS
机器世界:按计算机的观点对概念世界中的事物(实体及实体间的联系)进一步建模,将之抽象/转换为与计算机/DBMS相关的“物理数据模型”
续二:概念数据模型(CDM,Conceptual Database Model):主要用于数据库的概念设计
CDM以实体—关系(E—R)模型为基础,将现实世界中的客观对象抽象为实体和关系
在机器世界中,CDM将被转换为特定DBMS所支持的物理数据模型(PDM,Physical Database Model)
相关术语:实体(Entity):客观存在并且可以相互区分开来的事物
实体集(Entity Set):同一类实体的集合。通常将实体和实体集混用,笼统称为实体。一般很少强调实体集的概念
属性(Attribute):描述实体的特性
关系(Relationship):实体集之间的对应关系(现实世界事物之间的相互关联)
实体—关系模型(E—R Model,Entity-Relationship Model)
E—R模型:也称为E—R方法,它是由P.P.S.Chen(陈姓美籍华人)于1976年提出,该方法使用E—R图来描述现实世界的概念模型
在E—R模型中,现实世界是由一切称为实体的对象和这些对象之间的关系组成。它的三要素:实体、关系、属性
E—R图:即Entity—Relationship Diagram,是描述概念世界,建立概念模型的实用工具
E—R图三要素:实体:用矩形框表示
属性:用椭圆形表示,并用连线与实体连在一起
实体间联系:用菱形框表示,并用连线分别与相关实体相连,且需在连线上注明联系类型
实体间联系的类型分为三种,即一对一关系(1:1)、一对多关系(1:n)、多对多关系(m:n)
关系型数据库基本术语
术语:关系:整个二维表
关系名:表格名称
元祖:行数据(记录)
属性:列数据(字段/分量)
属性名:列名称(字段名)
主键:唯一确定元祖的属性组(关键字)
域:属性的取值范围
关系模式:关系名(属性列表)。如:学生(学号,姓名,性别,电话)
约束:域完整性约束:又称列完整性。对某一个字段或某一个属性的取值的约束
实体完整性约束:又称行完整性。要求表中每一行有一个唯一的标志符,这个标志符就是主关键字
参照完整性约束:又称引用完整性。它指的是多表之间的参照性,即保证主表中的数据与从表中的数据的一致性
Oracle【甲骨文】
公司:1977年,6月创办SDL,Software Development Laboratories
1979年,SDL更名为RSI,Relational Software Inc
1983年,RSI更名为ORACLE
SCOTT是Oracle公司除了两个创始人之外的第一个正式的雇员
现为全球最大数据库软件及服务供应商、全球第二大软件供应商(第一是微软)
Oracle目前在业界是当之无愧的第一名,它在国内行业占有份额也超过了50%
紧随其后的是IBM的DB2、SyBase公司的SyBase和微软的SQL Server等等,另外MySql的应用也比较广泛
数据库:全球化、跨平台的数据库。Oracle遵守数据存取语言、操作系统、用户接口和网络通信协议的工业标准
支持多用户、高性能的事务处理。强大的安全性控制和完整性控制。支持分布式数据库和分布处理
目前最新的版本是11g,g是grid网格。即支持网格计算,支持数据库的集权化运行
当前业界应用的主流是Oracle9i,i是integrated集成。它集成了客户端和服务器端以及其它工具