1 / 47

数据库培训

数据库培训. 主要内容. 1、什么是数据库 2、数据库的发展历史 3、主要的数据库厂商以及数据库 4、简单的数据库应用 5、数据库的新技术. 什么是数据库. 1、什么是数据 2、什么是数据库. 数据. 数据( Data) 是数据库中存储的基本对象 数据的定义 描述事物的符号记录 数据的种类 文字、图形、图象、声音 数据的特点 数据与其语义是不可分的. 数据举例. 数据的解释 事实:李明是个大学生,1972年出生,江苏人,1990年考入计算机系 语义:学生姓名、性别、出生年月、籍贯、所在系别、入学时间 学生档案中的学生记录

hayfa-david
Download Presentation

数据库培训

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 数据库培训

  2. 主要内容 • 1、什么是数据库 • 2、数据库的发展历史 • 3、主要的数据库厂商以及数据库 • 4、简单的数据库应用 • 5、数据库的新技术

  3. 什么是数据库 1、什么是数据 2、什么是数据库

  4. 数据 • 数据(Data)是数据库中存储的基本对象 • 数据的定义 • 描述事物的符号记录 • 数据的种类 • 文字、图形、图象、声音 • 数据的特点 • 数据与其语义是不可分的

  5. 数据举例 • 数据的解释 • 事实:李明是个大学生,1972年出生,江苏人,1990年考入计算机系 • 语义:学生姓名、性别、出生年月、籍贯、所在系别、入学时间 • 学生档案中的学生记录 (李明,男,1972,江苏,计算机系,1990) • 数据的形式不能完全表达其内容

  6. 数据库 • 人们收集并抽取出一个应用所需要的大量数据之后,应将其保存起来以供进一步加工处理,进一步抽取有用信息 • 数据库的定义 • 数据库(Database,简称DB)是长期储存在计算机内、有组织的、可共享的大量数据集合

  7. 什么是数据库

  8. 数据库的作用 商品:鞋子、车辆 仓库:存放各种商品; 工厂:使用、加工、生产商品 仓库管理规范:用于规范管理仓库内容 数据:财务数据、生产数据 数据库:存放各种数据; 软件:使用、加工、生产数据 SQL语言:标准查询语言,用来增、删、改、查数据库内容 软件系统=数据库软件+应用软件+数据

  9. 数据库的分类 • 桌面型数据库 access 网络型数据库 sqlserver,oracle,Mysql,db2,informix,sybase

  10. 数据库的主要厂商 1、ORACLE 2、微软的SQL SERVER 3、 MySQL 4、 IBM的DB2 5、Sybase

  11. 数据库厂商-ORACLE • 1970年的6月,IBM公司的研究员埃德加·考特 (Edgar Frank Codd) 在 Communications of ACM 上发表了那篇著名的《大型共享数据库数据的关系模型》(A Relational Model of Data for Large Shared Data Banks)的论文 • IBM虽然1973年就启动了System R的项目来研究关系型数据库的实际可行性,也没有及时推出这样的产品,因为当时IBM的的IMS(著名的层次型数据库)市场不错,如果推出关系型数据库,牵涉到IBM很多人的自身利益 • 1977年6月,Larry Ellison与Bob Miner和Ed Oates在硅谷投资2000美元共同创办了一家名为软件开发实验室(Software Development Laboratories,SDL)的计算机公司(ORACLE公司的前身)。主要从事软件定制开发

  12. 数据库厂商-ORACLE • 1979年,SDL更名为关系软件有限公司(Relational Software,Inc.,RSI) 1979年的夏季发布了可用于DEC公司的PDP-11计算机上的商用ORACLE产品 • 1983年,为了突出公司的核心产品,RSI再次更名为ORACLE,发布跨平台的oracle版本 1983年3月,RSI发布了ORACLE第三版,IBM发布了姗姗来迟的Database 2

  13. 数据库厂商-ORACLE • 1984年10月,ORACLE发布了第4版产品 • 1985年,ORACLE发布了5.0版,第一个稳定版本 • 1986年3月12日,ORACLE公司以每股15美元公开上市 • ORACLE第6版于1988年发布 • 1992年6月ORACLE第7版 • 1997年6月,ORACLE第八版发布

  14. 数据库厂商-ORACLE • 1998年9月,ORACLE公司正式发布ORACLE 8i • 在2001年6月的ORACLE OpenWorld大会中,ORACLE发布了ORACLE 9i • 2003年9月,旧金山举办的ORACLE World大会上,Ellison宣布下一代数据库产品为“ORACLE 10g” • 2007年11月,Oracle 11g正式发布

  15. oracle的趣闻 • oracle公司的命名 Ellison和Miner他们在前一家公司从事的一个由中央情报局投资的项目代码,他们把这个产品命名为ORACLE。因为他们相信,ORACLE是一切智慧的源泉。 • oracle数据库的缺省用户scott/tiger 第一位员工Bruce Scott,密码是Scott养的猫的名字 • oracle数据库没有version 1 出于市场的需要oracle的第一个版本宣称是第二版 • oracle的总裁埃里森在耶鲁的演讲 史上最牛的演讲

  16. oracle的趣闻 • ORACLE的主要竞争对手是Ingres数据库。Ingres在加州大学伯克利分校诞生,主要的设计者是当时鼎鼎大名的Michael Stonebraker教授。可以说Ingres数据库软件是上个世纪80年代技术上最好的数据库,Ingres市场分额的快速增长已经给ORACLE早成了很大的压力。巧的是,这个时候,IBM公司再一次伸出“上帝之手”。 • Ingres使用的是Stonebraker 发明的QUEL(Query Language))的查询技术,这和IBM的SQL大不相同。在某些地方QUEL甚至要优于SQL。IBM当时担心Ingres把QUEL变成标准会对自己不利。经过一番衡量,决定把自己的SQL提交给数据库标准委员会。而Stonebraker教授可不打算把QUEL提交给数据库标准委员会,学院派的他认为这么做实际上是扼杀了创新精神。

  17. 数据库厂商-IBM的DB2 • 1973年,IBM研究中心启动System R项目,为DB2的诞生打下良好基础 • 1982年,IBM发布SQL/DS for VSE and VM,以System R为原型。 • 1983年,发布Database2 (DB2) for MVS, 内部代号为"Eagle",于是 DB2正式诞生。 • 1986年,System/38 V7发布,首次配置查询优化器,能对应用的存取计划进行优化。

  18. 数据库厂商-IBM的DB2 • 1987年,DB2完成了到OS/2的扩展,进入微机领域。 • 1988年,发布SQL/400,为AS/400服务器提供SQL支持 • 1992年,DB2 for OS2 V1和DB2 for RS/6000 V1推出 • 1993年,郭士纳进入IBM,大刀改革 • 1994年,DB2实现了HP unix和Solaris版本。

  19. 数据库厂商-IBM的DB2 • 1995年,DB2开始支持Windows NT, Unix等多个平台 • 1997年, DB2 UDB for Unix/windows/OS2同时发布 • 1998年,DB2 开始支持SCO Unixware • 1999年,DB2支持Linux on intel cpu • 2000年,DB2 支持XML扩展

  20. 数据库厂商-IBM的DB2 • 2000年,进一步支持Linux集群 • 2001年IBM公司斥资10亿美元收购全球第四大数据库厂商Informix • 2007年, DB2 V9出现,好像是第一个混合模式(关系型、层次型)数据库出现

  21. 数据库厂商-Sybase • Sybase公司成立于1984年 Sybase公司的创始人之一Bob Epstein 是Ingres 大学版(与System/R同时期的关系数据库模型产品)的主要设计人员 • 1987年5月推出的Sybase SQLServer1.0 • 1987年的Sybase联合微软,共同开发。 • 1994年,Sybase,微软合作终止

  22. 数据库厂商-Sybase • 现在的Sybase,产品策略已经有了调整,在移动数据库市场上,它的ASA (SQL Anywhere)占据了绝对的老大地位,70%以上的市场。 • Sybase SQLServer后来为了与微软的MS SQL Server相区分,改名叫:Sybase ASE

  23. 微软的SQL SERVER • 1987年的Sybase联合微软,共同开发 • 1989年,微软发布了SQLServer1.0版 • 1994年,Sybase,微软合作终止 微软希望对SQL Server针对Windows NT做优化,却由于兼容性的问题,无法得到Sybase修改代码的认可。合作终止后,微软的sqlserver就只支持windows啦 • sqlserver2000和sqlserver2005版本

  24. 开源数据库Mysql • 1996年,MySQL 1.0发布 • 1999-2000年,有一家公司在瑞典成立了,叫MySQL AB • 2000年4月,MySQL对旧的存储引擎进行了整理,命名为MyISAM • 2008年1月16号 MySQL被Sun公司收购

  25. 国内的数据库

  26. 简单的数据库应用

  27. 简单的数据库应用 • 功能要求: • 1、能够定义数据的存储格式 • 2、查询,增加,修改,删除数据

  28. SQL> CREATE TABLE dept (deptno NUMBER(2), dname VARCHAR2(14), loc VARCHAR2(13)); Table created. 使用CREATE TABLE 语句 CREATE TABLE 表名 (属性列 数据类型 ); 定义基本表的属性时需要指明各属性的数据类型、长度及 与表相关的完整性约束条件。

  29. 建立数据表 • 建立一个名为student的基本表 CREATE TABLE student ( Sno char(5) , Sname char(20) , Ssex char(1), Sage int, Sdept char(15))

  30. 1.单表查询 • SELECT 指明输出什么列 • FROM 指明从哪个表查询 基本的SELECT 语句: SELECT {*, 目标列表达式 [别名],...} FROM 表名;

  31. 选择全部列 SQL> SELECT * FROM dept; DEPTNO DNAME LOC --------- -------------- ------------- 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON

  32. 3.4:数据更新 • 数据更新包括插入数据、更新数据和删除数据。 • 插入数据: INSERT INTO <表名>[(<列名>,……)] VALUES(常量1,……) • 更新数据: UPDATE <表名> SET <列名>=<表达式>,……[where 条件] • 删除数据: DELETE FROM <表名> [where 条件]

  33. SQL> INSERT INTO dept (deptno, dname, loc) VALUES (50, 'DEVELOPMENT', 'DETROIT'); 1 row created. SQL> INSERT INTO dept (deptno, dname ) VALUES (60, 'MIS'); 1 row created. SQL> INSERT INTO dept VALUES (70, 'FINANCE', NULL); 1 row created. 使用 INSERT 语句 INSERT INTO 表名 [(属性列名 [, 属性列名...])] VALUES (值1 [, 值2...]);

  34. SQL> UPDATE emp SET deptno = 20 WHERE empno = 7782; 1 row updated. SQL> UPDATE employee SET deptno = 20; 14 rows updated. 使用 UPDATE 语句 UPDATE 表名 SET 属性列1 = 值1 [, 属性列2= 值2] [WHERE 条件表达式];

  35. SQL> DELETE FROM department WHERE dname = 'DEVELOPMENT'; 1 row deleted. SQL> DELETE FROM department; 4 rows deleted. 使用 DELETE 语句 DELETE [FROM] 表名 [WHERE 条件表达式];

  36. 用SELECT语句实现连接操作 • 使用WHERE 短句来说明连接条件 • 对表与表之间的公共列,需要在列名前加上表名加以标识 SELECT 表名1.目标列 , 表名2.目标列 FROM 表名1, 表名2 WHERE 表名1.列 = 表名2. 列;

  37. Primary key Foreign key 等值连接 EMP DEPT EMPNO ENAME DEPTNO ------ ------- ------- 7839 KING 10 7698 BLAKE 30 7782 CLARK 10 7566 JONES 20 7654 MARTIN 30 7499 ALLEN 30 7844 TURNER 30 7900 JAMES 30 7521 WARD 30 7902 FORD 20 7369 SMITH 20 ... 14 rows selected. DEPTNO DNAME LOC ------- ---------- -------- 10 ACCOUNTING NEW YORK 30 SALES CHICAGO 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 30 SALES CHICAGO 30 SALES CHICAGO 30 SALES CHICAGO 30 SALES CHICAGO 20 RESEARCH DALLAS 20 RESEARCH DALLAS ... 14 rows selected.

  38. 等值连接的实现 SQL> SELECT emp.empno, emp.ename, emp.deptno, 2 dept.deptno, dept.loc 3 FROM emp, dept 4 WHERE emp.deptno=dept.deptno; EMPNO ENAME DEPTNO DEPTNO LOC ----- ------ ------ ------ --------- 7839 KING 10 10 NEW YORK 7698 BLAKE 30 30 CHICAGO 7782 CLARK 10 10 NEW YORK 7566 JONES 20 20 DALLAS ... 14 rows selected.

  39. 数据库的新技术 • 分布式数据库 • 逻辑上是一个统一的数据库系统 • 物理上分散在不同的场地(节点) • 各场地通过计算机网络连接在一起 • 统一由一个分布式数据库管理系统( DDBMS )管理 • 特点 • 分布性: • 数据的分布性 • 事务的分布性 • 协调性:逻辑上整体、具整体完整性约束

  40. 数据库的新技术 • 对象数据库 云数据库 与云计算的概念对应 • 数据仓库

  41. 数据管理技术的产生和发展 • 什么是数据管理 • 对数据进行分类、组织、编码、存储、检索和维护,是数据处理的中心问题 • 数据管理技术的发展过程 • 人工管理阶段(40年代中--50年代中) • 文件系统阶段(50年代末--60年代中) • 数据库系统阶段(60年代末--现在)

  42. 人工管理 • 时期 • 40年代中--50年代中 • 产生的背景 • 应用需求 科学计算 • 硬件水平 无直接存取存储设备 • 软件水平 没有操作系统 • 处理方式 批处理

  43. 文件系统 • 时期 • 50年代末--60年代中 • 产生的背景 • 应用需求 科学计算、管理 • 硬件水平 磁盘、磁鼓 • 软件水平 有文件系统 • 处理方式 联机实时处理、批处理

  44. 数据库系统 • 时期 • 60年代末以来 • 产生的背景 • 应用背景 大规模管理 • 硬件背景 大容量磁盘 • 软件背景 有数据库管理系统 • 处理方式 联机实时处理,分布处理,批处理

  45. 数据库的发展历史 • 1963年,美国IDS(Integrated Data Store)系统投入运行,揭开了数据库技术的序幕。 • 20世纪70年代是数据库蓬勃发展的年代,网状系统和层次系统占据了整个数据库商用市场,而关系系统仅处于实验阶段。 • 20世纪80年代,关系系统由于使用简便以及硬件性能的改善,逐步代替网状系统和层次系统占领了市场。 • 20世纪90年代,关系数据库已成为数据库技术的主流。 • 进入21世纪以后,无论是市场的需求还是技术条件的成熟,对象数据库技术、网络数据库技术的推广和普及已成定局。

  46. 几种数据库对象模型

  47. 谢谢!

More Related