转载请注明:http://blog.csdn.net/uniquewonderq
1.数据库原理
1.1
数据库简介
1.1.1 手工管理 文件管理 数据库
文件存储方法保存数据的弊端:
1>缺乏对数据的整体管理,数据不便修改
2>不利于数据分析和共享
3>数据量急剧增长,大量数据不可能长期保存在文件中
1.1.2.DB和DBMS
数据库(Database,简称DB)是按照数据结构来组织,存储和管理数据的仓库。
数据库管理系统(Database Management System,简程DBMS):管理数据库的软件
1.1.3关系数据库简介
关系:描述两个元素间的关联或对应关系
使用关系模型把数据组织到二维数据表(table)中
产品化:Oracle DB2
Sybase SQL server
MySql
1.1.4表的概念
1>一个关系数据库由多个数据表(table )组成,数据表是关系数据库的基本存储结构
2>表示二维的,由行和列组成
3>表的行(Row)是横排数据,也被称为记录(Record)
4>表的列(Column)是总行数据,也被称为字段(Field)
5>表和表之间存在关联关系
1.2主流关系型数据库
1.2.1Oracle数据库概述
Oracle是著名的Oracle(甲骨文)公司的数据库产品
Oracle是世界上第一个商品化的关系数据库管理系统
Oracle采用标准SQL(结构化查询语言),支持多重数据类型,提供面向对象的数据支持,具有第四代语言开发工具,支持UNIX,WINDOWS,OS/2等多种平台,
Oracle公司的产品丰富,包括Oracle服务器,Oracle开发工具和Oracle应用软件。其中最著名的就是Oracle数据库,目前最新版本是Oracle 12c
1.2.2DB2数据库概述
DB2是IBM公司的关系型数据库管理系统
DB2有很多不同的版本,可以运行在从掌上产品到大型机的终端机器上
DB2 Universal Database Personal Edition和DB2 Universal Database Workgroup Edition 分别是单用户和多用户系统,可以运行在OS/2和windows上
DB2是Oracle 的主要竞争对手
1.2.3 Sybase数据库概述
Sybase是美国Sybase公司的关系型数据库系统
Sybase是较早采用C/S技术的数据库厂商
典型的UNIX或Windows NT平台上客户机/服务器环境下的大型数据库系统
Sybase通常与Sybase SQL Anywhere用于客户机/服务器环境,前者作为服务器数据库,后者作为客户机数据库,采用该公司研制的PowerBuilder为开发工具,在国内大中型系统中具有广泛的应用。
2010年被SAP收购
1.2.4SQL Server数据库概述
Mircrosoft SQL Server是微软的产品,运行在Windows NT服务器上
Mircrosoft SQL Server的最初版本适用于中小企业,但是应用范围不断扩展,已经触及到大型,跨国企业的数据库管理。
1.2.4 MySQL数据库
MySQL是开放源码的小型关系数据库管理系统,广泛应用于中小型网站中
总体拥有成本低,规模比Oracle 和DB2小
2008年1月16日,Sun收购MySQL,2009年4月20日,SUN被 Oracle 公司收购,所以MySQL现在属于Oracle公司
1.3结构化查询语言
1.3.1结构化查询语言
SQL(Structured Query Language)结构化查询语言。
SQL是关系数据库上执行数据操作、检索以及维护所使用的标准语言,可以用来查询数据,操纵数据,定义数据,控制数据。
所有数据库都是用相同或者相似的语言
SQL可分为:DDL,DML,TCL,DQL,DCL,下面依次来解释
1.3.2数据定义语言(DDL)
Data Definition Language
用于创建、修改、删除数据库对象
常见的包括:
CREATE :创建表或其他对象的结构
ALTER:修改表或其他对象的结
DROP:删除表或其他对象的结构
TRUNCATE:删除表数据,保留表结构
1.3.3 数据操作语言(DML)
Data Manipulation Language
用于改变数据表中的数据
和事务相关,执行完后需要经过事务控制语句提交后方真正的将改变应用到数据库中
常用包括:
INSERT:将数据插入到数据表中
UPDATE:更新数据库表中已存在的数据
DELETE:删除数据表中的数据
1.3.4事务控制语言(TCL)
Transaction Control Language
用来维护数据一致性的要求
常用包括:
COMMIT:提交,确认已经进行的数据改变
SAVEPOINT:原存点,使当前的事务可以回退到指定的保存点,便于取消部分改变
1.3.5数据查询语言(DQL)
Data Query Language
用来查询所需要的数据
SELECT语句
1.3.6数据控制语言(DCL)
Data Control Language
用于执行权限的授予和收回操作
常用包括:
GRANT:授予用于给用户的角色授予权限
REMOVE :取消撤销用户的权限