您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > 21L01_Oracle数据库编程_QUST
数据库基础概述从业要求数据库系统•数据库系统研究的对象–如何高效巧妙地进行数据管理,而又花费最少•三个主要研究领域:–DBMS及其辅助软件–数据库设计–数据库理论一些基本概念数据•数据(Data)是数据库中存储的基本对象•文本、图形、图像、音频、视频等都是数据•可以将数据定义为:数据是描述事物的符号记录•数据有多种表现形式,可以经过数字化后保存在计算机中12数据•数据需要经过解释才能明确其表达的含义–“20”–当解释其代表人的年龄时就是20岁–当解释其代表商品价格时,就是20元•数据和解释不可分–数据的解释是对数据的说明–数据的含义称为数据的语义13数据•在日常生活中,一般直接用自然语言来描述事物•如描述一门课程的信息–数据库系统基础课程,4个学分,第5学期开设•但在计算机中经常按如下形式描述–(ORACLE,4,5)•(01,220,0.5)?•(02,120,80,’2013-03-08’)?数据库•长期储存在计算机内、有组织的、可共享的大量数据集合•数据库的特征–数据按一定的数据模型组织、描述和储存–可为各种用户共享–冗余度较小–数据独立性较高–易扩展15数据库管理系统•是位于用户和操作系统之间的一层数据管理软件•是一个专门用于实现对数据进行管理和维护的系统软件应用系统应用开发工具数据库管理系统操作系统硬件数据库管理系统•主要功能数据库的建立与维护数据定义数据组织、存储和管理数据操作事务的管理和运行其他功能数据库系统•在计算机系统中引入数据库后的系统–数据库DB–数据库管理系统DBMS–各种开发工具–数据库应用系统–数据库管理员DBA–用户–计算机硬件及其他软件数据库系统用户1用户n…….数据库(存储数据)应用系统应用开发工具数据库管理系统数据库管理员操作系统数据管理技术的产生和发展数据处理和数据管理数据管理•对数据进行•收集、整理、组织、存储–对象•维护、检索、传送等–操作•在妥当的时候以妥当的形式给妥当的人提供妥当的数据数据处理•对数据进行加工、计算、提炼,从而产生新的有效数据的过程•范围较大,是一系列活动的总和数据信息数据管理和数据处理数据处理数据处理……源数据新数据新数据数据管理是数据处理的中心问题数据管理数据管理三个阶段人工管理阶段•1940s文件系统阶段•1950s数据库系统阶段•1960s-now人工(程序员)管理阶段•需要:计算机主要用于科学计算•硬件:无直接存取存储设备•软件:无操作系统和数据管理软件•数据处理方式:批处理•JoeHellerstein,Berkeley,CS186,DatabaseSystemsThen人工(程序员)管理阶段•数据不保存•程序员负责数据管理的一切工作•数据和程序一一对应,没有独立性和共享性APP 1APP 2APP NDATA 1DATA 2DATA N文件管理模式•需要–数据量增大,联机处理增多•硬件–磁盘、磁鼓等直接存取存储设备•软件–操作系统及其文件管理软件•数据处理方式–批处理、联机实时处理 文件管理模式初等文件系统•组织方式–顺序文件•数据结构–物理结构=逻辑结构•软件功能–仅有简单I/O操作成熟文件系统•组织方式–顺序和随机存取并用•数据结构–物理结构和逻辑结构有了简单的变换•软件功能–软件系统提供了存取方法文件管理模式主要问题•数据高度冗余–数据基本上还是面向应用或特定用户的。•数据共享困难–文件基本上是私有的,只能提供很弱的文件级共享•数据和程序缺乏独立性–只有一定的物理独立性,完全没有逻辑独立性。编写应用程序不方便数据冗余不可避免应用程序依赖性不支持对文件的并发访问数据间联系弱、共享困难难以按用户视图表示数据无安全控制功能文件管理模式应用程序2应用程序1学生基本信息管理学生选课管理学生信息文件F1课程信息文件F2学生选课信息文件F3(学号,姓名,系,专业,性别,通讯地址,联系电话,民族)(学号,姓名,系,专业,课程号,学分,成绩)文件管理模式•编写应用程序不方便•应用程序编写者必须清楚地了解所用文件的逻辑及物理结构–如文件中包含多少个字段–每个字段的数据类型–采用何种逻辑结构和物理存储结构•对文件的查询、修改等处理都必须在应用程序中编程实现文件管理模式•数据冗余不可避免•存储空间的浪费•造成了数据的不一致(inconsistency)–某学生所学的专业发生了变化–若只在F1文件中进行修改,而忘记在F3中应做同样的修改–则会造成同一名学生在两个文件中的“专业”不一样文件管理模式•应用程序依赖性•应用程序对数据的操作依赖于存储数据的文件的结构•文件和记录的结构通常是应用程序代码的一部分–如C程序的结构体(struct)•文件结构的每一次修改,都将导致应用程序的修改文件管理模式•不支持对文件的并发访问•文件最初是作为程序的附属数据出现的•一般不支持多个应用程序同时对同一个文件进行访问–假如:A和B编辑同一个文件,同时保存–结果是谁的保存有效?(A?B?Both?None?)•当第二个用户在第一个用户未关闭此文件前打开此文件时,只能以只读方式打开此文件,而不能对此文件进行修改文件管理模式•数据间联系弱•文件与文件之间是彼此独立、毫不相干的•文件之间的联系必须通过程序来实现•比如F3文件中的学号、姓名等学生的基本信息必须是F1文件中已存在的(即选课学生必须是已存在的学生)•数据之间的联系是实际应用当中所要求,但文件本身不具备自动实现这些联系的功能文件管理模式•难以满足不同对数据用户的需求•不同的用户关注的数据往往不同–例如,对于学生基本信息–分配学生宿舍的部门可能只关心学生的学号、姓名、性别和班号–教务部门可能关心的是学号、姓名、所在系、专业和班号•需要为每个用户建立一个文件,造成很多的数据冗余文件管理模式•无安全控制功能•在文件管理方式中,很难控制某个人对文件能够进行的操作–如只允许某个人查询和修改数据,但不能删除数据–或者对文件中的某个或者某些字段不能修改等•在实际应用中,数据的安全性是非常重要且不可忽视的数据库管理模式•需要–数据管理需要越来越多、规模越来越大–多种应用、多种语言互相覆盖,共享要求越来越大•硬件–大容量硬盘,硬件价格下降•软件–软件价格上升,编制和维护成本增加•处理方式–联机实时处理多,分布处理需求数据库管理模式各学院程序学生基本信息管理学生有关的数据库教务部门程序学生选课管理数据库管理系统数据库管理模式•数据结构化–不仅描述数据本身,还描述数据之间的联系–数据库系统实现整体数据的结构化–区别于文件系统的重要标志•数据的共享性高,冗余度低,易扩充–数据不再面向某个应用而是面向整个系统–数据可以被多个用户、多个应用共享数据数据库管理模式数据库管理的优点•文件系统不能适应大数据量、多应用共享数据的根本原因–数据没有集中管理•数据库方法的基本出发点–把数据统一管理、控制,共享使用相互关联的数据的集合较少的数据冗余程序与数据相互独立保证数据的安全、可靠最大限度地保证数据的正确性数据可以并发使用并能保证一致性数据库管理模式•相互关联的数据的集合•数据高度结构化集成–面向全组织–数据不是孤立的,数据与数据之间是相互关联的–不仅表示数据本身,还表示数据与数据之间的联系–区别于文件系统的重要标志数据库管理模式•一个简单的教学数据库系统学生(学号,姓名,性别,出生日期,党派,籍贯,系号)家庭成员(学号,姓名,性别,与本人关系,单位,职务)奖惩(学号,时间,类别,事由,级别)学历(学号,时间,学校,性质)系(系号,系名,地址,电话,系主任)课程(课号,课程名,学时,学分,性质)选课(学号,课号,教师号,成绩)教师(教师号,姓名,职称,系号)数据库管理模式•较少的数据冗余•共享性好,数据库中的数据被统一管理,可为多个不同的用户共同使用,任何对数据的操作都由数据库管理系统DBMS完成UserA(SQL)UserD(FORTRAN)UserB(C)UserC(COBOL)DB数据库管理模式•保证数据的安全(Security)、可靠•主动安全(机制)–有效地防止数据库中的数据被非法使用或非法修改–保护数据以防止不合法的使用造成的数据泄密和破坏–DBMS能为使用数据的各级用户分配不同的权限•被动安全(备份)–数据遭到破坏时能立刻将数据完全恢复到正常状态数据库管理模式•最大限度地保证数据的正确性•正确、有效、相容,保证数据正确的特性在数据库中称之为数据完整性(Integrity)•将数据控制在有效范围内,或保证数据之间满足一定的关系数据库管理模式•保证数据的一致性•并发(Concurrency)控制,在多个用户同时使用数据库时,能够保证不产生冲突和矛盾,保证数据的一致性和正确性。10张票订8张票:10-8=2订4张票:10-6=4数据库管理模式•数据具有较高的独立性•数据独立性是指数据的组织和存储方法与应用程序互不依赖、彼此独立的特性•简化应用程序的编写和维护比较人工管理文件系统数据库管理谁管理数据程序员操作系统提供存取方法系统集中管理面向谁特定应用基本上是特定用户面向系统共享性不能共享很弱充分共享数据独立性没有一定的物理独立性较高的独立性比较•文件系统和数据库系统的本质区别•内部–数据库的数据是结构化的,有联系的–文件系统的各记录无联系•外部–数据库系统是共享的–文件系统基本上是面向特定用户的数据独立性数据独立性•物理独立性–应用程序不会因数据的物理表示方式、存储结构和访问技术的改变而改变–比如,从链表存储改为哈希表存储,不影响应用程序的特性•逻辑独立性–当表达现实世界的信息内容发生变化时,应用程序独立–比如,增加一些列、删除无用列等,不影响应用程序的特性•数据的独立性由DBMS的二级映像功能保证数据独立性局部逻辑结构1局部逻辑结构n局部逻辑结构2……全局逻辑结构物理结构DataBase映象1映象2逻辑独立性物理独立性物理独立性•用户的应用程序与存储在磁盘上的数据库中数据是相互独立的•当数据物理存储改变了,应用程序不用改变应用程序D:\xE:\a学生数据库D:\xF:\b学生数据库逻辑独立性•用户的应用程序与数据库的逻辑结构是相互独立的•数据的逻辑结构改变了,用户程序也可以不变•指当表达现实世界的信息内容发生变化时,不影响应用程序的特性,比如:–增加信息–删除无用信息等应用程序学生数据库学生数据库逻辑独立性学号姓名性别所在系S01张三男计算机S02李四女计算机S03王五女信息S04陈六男信息学号姓名性别所在系专业S01张三男计算机软件S02李四女计算机应用S03王五女信息管理S04陈六男信息管理应用程序学号姓名性别S01张三男S02李四女S03王五女S04陈六男非独立性•在使用文件系统管理数据时,应用程序常常是数据依赖的•数据的物理表示方式和有关的存取技术都要在应用程序中考虑•有关物理表示的知识和访问技术直接体现在应用程序的代码中file1D:\data\file1file1F:\data\file1Openfile(“D:\data\file1”)Openfile(“F:\data\file1”)数据库系统的组成数据库系统数据库最终用户应用系统应用开发工具DBMS操作系统数据库管理员DBA应用程序员数据库系统•数据库系统就是计算机系统中引进数据库后的构成•数据库是数据的汇集,它以一定的组织形式保存在存储介质上•数据库管理系统是管理数据库的系统软件,它可以实现数据库系统的各种功能•应用程序专指以数据库数据为基础的程序•数据库管理员负责整个数据库系统的正常运行硬件•由于数据库中的数据量一般都比较大,而且DBMS自身的规模也比较大•必须要有足够大的内存,来存放操作系统、数据库管理系统、数据缓冲区和应用程序,而且还要有足够大的硬盘空间来存放数据库数据,最好还有足够的存放备份数据的磁带、磁盘或光盘。软件•数据库管理系统(DBMS):是整个数据库系统的核心,是建立、使用和维护数据库的系统软件•操作系统:支持数据库管理系统运行•具有数据库访问接口的高级语言及其编程环境,以便于开发应用程序•实用工具:一般是数据库厂商提供的随数据库管理系统软件一起发
本文标题:21L01_Oracle数据库编程_QUST
链接地址:https://www.777doc.com/doc-6202212 .html