您好,欢迎访问三七文档
第一:**数据库管理阶段经历了人工管理、文件系统和数据库系统三个发展阶(1)人工管理阶段的特点如下:1.数据不保存因为当时计算机主要用于科学计算,对于数据保存的需求尚不迫切。2.系统没有专用的软件对数据进行管理每个应用程序都要包括数据的存储结构、存取方法、输入方式等,程序员编写应用程序时,还要安排数据的物理存储,因此程序员负担很重。3.数据不共享数据是面向程序的,一组数据只能对应一个程序。多个应用程序涉及某些相同的数据时,也必须各自定义,因此程序之间有大量的冗余数据。4.数据不具有独立性程序依赖于数据,如果数据的类型、格式、或输入输出方式等逻辑结构或物理结构发生变化,必须对应用程序做出相应的修改。在人工管理阶段,程序与数据之间的关系可用图1.1表示。(2)文件管理数据的特点如下:1.数据以文件形式可长期保存下来用户可随时对文件进行查询、修改和增删等处理。2.文件系统可对数据的存取进行管理程序员只与文件名打交道,不必明确数据的物理存储,大大减轻了程序员的负担。3.文件形式多样化有顺序文件、倒排文件、索引文件等,因而对文件的记录可顺序访问,也可随机访问,更便于存储和查找数据。4.程序与数据间有一定独立性由专门的软件即文件系统进行数据管理,程序和数据间由软件提供的存取方法进行转换,数据存储发生变化不一定影响程序的运行。(3)**数据库系统管理数据的特点如下:1.数据共享性高、冗余少这是数据库系统阶段的最大改进,数据不再面向某个应用程序而是面向整个系统,当前所有用户可同时存取库中的数据。这样便减少了不必要的数据冗余,节约存储空间,同时也避免了数据之间的不相容性与不一致性。2.数据结构化按照某种数据模型,将全组织的各种数据组织到一个结构化的数据库中,整个组织的数据不是一盘散沙,可表示出数据之间的有机关联。3.**数据独立性高数据的独立性是指逻辑独立性和物理独立性。数据的逻辑独立性是指当数据的总体逻辑结构改变时,数据的局部逻辑结构不变,由于应用程序是依据数据的局部逻辑结构编写的,所以应用程序不必须修改,从而保证了数据与程序间的逻辑独立性。例如,在原有的记录类型之间增加新的联系,或在某些记录类型中增加新的数据项,均可确保数据的逻辑独立性。数据的物理独立性是指当数据的存储结构改变时,数据的逻辑结构不变,从而应用程序也不必改变。例如,改变存储设备和增加新的存储设备,或改变数据的存储组织方式,均可确保数据的物理独立性。4.**有统一的数据控制功能(四点)(1)数据的安全性(security)控制:防止不合法使用数据造成数据的泄露和破坏,保证数据的安全和机密;例如,系统提供口令检查或其他手段来验证用户身份,防止非法用户使用系统;也可以对数据的存取权限进行限制,只有通过检查后才能执行相应的操作。(2)数据的完整性(integrity)控制:系统通过设置一些完整性规则以确保数据的正确性、有效性和相容性正确性是指数据的合法性,如年龄属于数值型数据,只能含0,1,…9,不能含字母或特殊符号;有效性是指数据是否在其定义的有效范围,如月份只能用1~12之间的正整数表示;相容性是指表示同一事实的两个数据应相同,否则就不相容,如一个人不能有两个性别。(3)并发(concurrency)控制:多用户同时存取或修改数据库时,防止相互干扰而提供给用户不正确的数据,并使数据库受到破坏。(4)数据恢复(recovery):当数据库被破坏或数据不可靠时,系统有能力将数据库从错误状态恢复到最近某一时刻的正确状态。数据库系统阶段,程序与数据之间的关系可用图1.3表示。第二:数据库系统(DBS)的概念:是指计算机系统中引入数据库后的系统。数据库系统(DBS)的组成数据(库)、用户、软件和硬件四部分组成。1、数据(库)DB:**概念:数据库是长期存储在计算机内有组织的共享的数据的集合。数据库特点如下:1、集成性2.共享性2、数据库管理系统DBMS概念**:为解决多用户、多个应用程序共享数据的需求,出现了统一管理数据的专门软件系统3、用户:**是指使用数据库的人,即对数据库的存储、维护和检索等操作。用户分为三类**:1.第一类用户,终端用户(EndUser)主要是使用数据库的各级管理人员、工程技术人员、科研人员,一般为非计算机专业人员;2.第二类用户,应用程序员(ApplicationProgrammer)负责为终端用户设计和编制应用程序,以便终端用户对数据库进行存取操作。3.**第三类用户,数据库管理员(DadabaseAdministrator,简称DBA)DBA是指全面负责数据库系统的“管理、维护和正常使用的”人员,其职责如下(1)参与数据库设计的全过程,决定数据库的结构和内容;(2)定义数据的安全性和完整性,负责分配用户对数据库的使用权限和口令管理;(3)监督控制数据库的使用和运行,改进和重新构造数据库系统。当数据库受到破坏时,应负责恢复数据库;当数据库的结构需要改变时,完成对数据结构的修改4.**DBS的核心是DBMS。第三:DBMS的主要功能(五点)1.数据定义2.数据操纵3.数据库运行管理4.数据库的建立和维护功能5.数据通信第四:模型有四种:数据模型,层次模型,网状模型,**关系模型数据模型1、**数据模型通常由数据结构、数据操作和数据的约束条件三个要素组成。其中**数据结构有层次结构、网状结构和关系结构三种类型2、数据操作如数据的检索、插入、删除和修改等。3、数据的约束条件例如,在学生数据库中,学生的年龄不得超过40岁。**键(Key)能唯一标识一个实体的属性或属性集称为实体的键。**域(Domain)属性值的取值范围称为该属性的域。关系模型的基本概念:**关系模型就是用二维表格结构来表示实体及实体之间联系的模型。关系模型的数据结构是一个“二维表框架”组成的集合,每个二维表又可称为关系,所以关系模型是“关系框架”的集合。关系模型是最为简单灵活的**。关系表中:**(1)关系(Relation)一个关系对应一张二维表,如图1.12的五张表对应五个关系。**(2)元组(Tuple)表格中的一行,如S表中的一个学生记录即为一个元组。**(3)属性(Attribute)表格中的一列,相当于记录中的一个字段,如S表中有五个属性(学号,姓名,性别,年龄,系别)。***(4)关键字(Key)可唯一标识元组的属性或属性集,也称为关系键或主码,如S表中学号可以唯一确定一个学生,为学生关系的主码。学会写迪卡尔乘**:D1={李力,王平,刘伟}D2={男,女}D1*D2后得D1×D2={(李力,男),(李力,女),(王平,男),(王平,女),(刘伟,男),(刘伟,女)}第三:关系具有如下特性:(需会了解判断)1.关系中不允许出现相同的元组。2.关系中元组的顺序(即行序)是无关紧要的3.关系中属性的顺序是无关紧要的,即列的顺序可以任意交换。4.同一属性名下的各个属性值必须来自同一个域,是同一类型的数据。5.关系中各个属性必须有不同的名字,不同的属性可来自同一个域,即它们的分量可以取自同一个域。6.关系中每一分量必须是不可分的数据项第四:关系的键包括:候选键与关系键能唯一标识关系中元组的属性或属性集,则称该属性或属性集为候选键(CandidateKey),也称候选关键字或候选码。如:“学生关系”中的学号能唯一标识每一个学生,则属性学号是学生关系的候选键。在“选课关系”中,只有属性的组合“学号+课程号”才能唯一地区分每一条选课记录,则属性集“学号+课程号”是选课关系的候选键。如果一个关系中有多个候选键,可以从中选择一个作为查询、插入或删除元组的操作变量,被选用的候选键称为主关系键(PrimaryKey),或简称为主键、主码、关系键、关键字。例如,假设在学生关系中没有重名的学生,则“学号”和“姓名”都可作为学生关系的候选键。如果选定“学号”作为数据操作的依据,则“学号”为主关系键。外键:如果关系R2的一个或一组属性X不是R2的主码,而是另一关系R1的主码,则该属性或属性组X称为关系R2的外部关系键或外码(Foreignkey)。并称关系R2为参照关系(referencingrelation),关系R1为被参照关系(referencedrelation)。2.4.2**主属性与非码属性主属性(PrimeAttribute):包含在主码中的的各属性称为主属性。非码属性(Non-PrimeAttribute):不包含在任何候选码中的属性称为非码属性。在最简单的情况下,一个候选码只包含一个属性,如学生关系中的“学号”,教师关系中的“教师号”。在最极终端的情况下,所有属性的组合是关系的候选码,这时称为全码(all-key)。2.4.4关系模型的完整性**为了维护数据库中数据与现实世界的一致性,对关系数据库的插入、删除和修改操作必须有一定的约束条件,这就是关系模型的三类完整性:实体完整性参照完整性用户定义的完整性1.实体完整性(EntityIntegrity)实体完整性**是指主关系键的值不能为空或部分为空。关系模型中的一个元组对应一个实体,一个关系则对应一个实体集。例如,一条学生记录对应着一个学生,学生关系对应着学生的集合。2.参照完整性(Referentialintegrity)***如果关系R2的外部关系键X与关系R1的主关系键相符,则X的每个值或者等于R1中主关系键的某一个值,或者取空值。实体完整性和参照完整性是关系模型必须满足的完整性约束条件,被称作关系的两个不变性。3.用户定义完整性(User-definedIntegrity)用户定义完整性是针对某一具体关系数据库的约束条件。例如,属性值根据实际需要,要具备一些约束条件,如选课关系中成绩不能为负数;某些数据的输入格式要有一些限制等关系模型应该提供定义和检验这类完整性的机制,以便用统一的、系统的方法处理它们,而不要由应用程序承担这一功能。目的:为了使数据库与现实世界的一致性。第五:按表达查询的方法不同,关系运算可分为关系代数和关系演算两大类。关系代数是对关系进行集合代数运算,是基于关系代数的操作语言,称为关系代数语言,简称关系代数。第六:**关系代数的运算对象是关系,运算结果也是关系,关系代数用到的运算符主要包括四类:集合运算符:∪(并),-(差),∩(交),X(广义笛卡尔积);专门的关系运算符:σ(选择),∏(投影),∞(连接),*(自然连接),÷(除);算术比较运算符:(大于),≥(大于等于),(小于),≤(小于等于),=(等于),≠(不等于);逻辑运算符:∧(与),∨(或),┐(非)关系代数的运算按运算符的不同主要分为两类:传统的集合运算:把关系看成元组的集合,以元组作为集合中元素来进行运算,其运算是从关系的“水平”方向即行的角度进行的。包括并、差、交和笛卡尔积等运算。专门的关系运算:不仅涉及行运算,也涉及列运算,这种运算是为数据库的应用而引进的特殊运算。包括选取、投影、连接和除法等运算。大题:选择运算投影运算:等值与自然连接数据更新更新操作包括修改UPDATE、插入PUT和删除DELETECREATE定义一个新关系,DESTROY撤销关系,第六:SQL语言具有:•数据查询(QUERY)•数据定义(DEFINITION)•数据操纵(MANIPULATION)(insert,delete,updata)•数据控制(CONTROL)删除用户:drop更改:alter建立:create增加:addSQLSERVER的数据类型有很多种,分为以下9类:1.整数数据类型:依整数数值的范围大小,有BIT,INT,SMALLINT,TINYINT四种。2.精确数值类型:用来定义可带小数部分的数字,有NUMERIC和DECIMAL两种。二者相同,但建议使用DECIMAL。如:123.0、8000.563.近似浮点数值数据类型:当数值的位数太多时,可用此数据类型来取其近似值,用FLOAT和REAL两种。如:1.23E+104.日期时间数据类型:用来
本文标题:数据库
链接地址:https://www.777doc.com/doc-2332457 .html