搜档网
当前位置:搜档网 › 数据库基础知识讲解

数据库基础知识讲解

数据库基础知识讲解
数据库基础知识讲解

目录

一、数据库基础知识 (1)

二、Access 2003数据库对象 (5)

三、数据表 (5)

四、查询 (7)

五、窗体 (8)

六、报表 (10)

七、数据访问页 (10)

八、宏 (11)

九、模块和VBA(Visual Basic for Application)编程 (12)

十、公共基础知识 (15)

一、数据库基础知识

1、数据是描述客观事物及其活动的并存储在某一种媒体上能够

识别的物理符号。信息是以数据的形式表示的,数据是信息的载体。分为临时性数据和永久性数据。

2、数据处理的目的是为了从大量、原始的数据中抽取对人们有价

值的信息。

3、数据库是以一定的组织方式将相关的数据组织在一起存放在

计算机外存储器上(有序的仓库),并能为多个用户共享与应用程序彼此独立的一组相关数据的集合。

4、数据库管理系统(DBMS ,database management system,数据

库系统的核心)是软件系统。数据库管理系统提供以下的数据语言:数据定义语言(DDL),负责数据的模式定义与数据的物理存取构建;数据操纵语言(DML),负责数据的操纵,如查询、删除、增加、修改等;数据控制语言,负责数据完整性、安全性的定义与检查,以及并发控制、故障恢复等。

5、数据库系统(DBS)包括5部分:硬件系统、数据库集合(DB)、

数据库管理系统(DBMS)及相关软件、数据库管理员(DBA ,database administrator)和用户(专业用户和最终用户)。

需要操作系统的支持。

6、数据库管理技术的发展:人工管理、文件管理(数据冗余大、

数据的不一致性、数据关联差)、数据库管理、分布式数据库管理、面向对象数据库管理。根本目标是解决数据共享的问题。

7、数据库系统的特点:数据结构化(是数据库系统与文件系统的

根本区别),共享性高、冗余度低、易于扩充,独立性强(物理独立性和逻辑独立性),数据由DBMS统一管理和控制。三级模式(概念模式、内模式和外模式)和二级映射(外模式/概念模式的映射、概念模式/内模式的映射)构成了数据库系统的内部的抽象结构体系。内模式又称物理模式,给出了数据库的物理存储结构与物理存取方法;概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户的公共数据视图,主要描述数据的概念纪录类型以及它们之间的关系,还包括数据间的语义约束;外模式也称子模式或用户模式,它由概念模式推导而出的,在一般DBMS中提供相

关的外模式描述语言(DDL)

8、数据库设计一般以过程迭代和逐步求精为基本思想,是应用面

向数据的方法和面向过程的方法进行的,在已有数据库管理系统的基础上建立数据库。设计步骤如下:需求分析—概念设计—逻辑设计(任务是将E-R图转换为关系模型,实体和联系都可以表示成关系)—物理设计(前四个为数据库生命周期的设计阶段)—编码—测试—运行—进一步修改(后四个为数据库生命周期的实现阶段)。

需求分析这一阶段常用结构化分析方法(自顶向下,逐层分解)和面向对象的方法,常用到的两种工具为数据流程图和数据字典。基本任务是问题识别(包括功能、性能、环境、用户界面的需求,确定软件系统功能)、分析与综合(导出软件的逻辑模型)、编写文档(需求规格说明书、初步用户手册、确认测试计划、修改完善软件开发计划)。

9、数据模型:数据相互依存的描述,组织结构满足某一数据特性。

任何一个数据库管理系统都是基于某种数据模型,是数据库的核心。分类:E-R模型(表示用矩形图表示实体集、用椭圆形表示属性、用菱形表示联系)、层次数据模型(所属关系),网状数据模型(交叉渗透),关系数据模型(用二维表来表示实体与实体间联系,并列关系)。在关系模型中:关系、元组、属性(在同一个关系中,元组和属性不允许相同),域:属性的取值范围,主关键字(主键):能唯一标识关系中每一个元组(无重复)的属性或属

性集,在任何关系中至少有一个,可以定义三种组关键字:单子段、多字段及自动编号,如学号;外部关键字(外键):用于连接另一个关系,并且在另一个关系中为主键;候选关键字也能起到唯一标识一个元组的作用,在满足实体约束的条件下,一个关系中应该至少有一个或多个候选关键字。传统的集合运算包括并、差(从R中去掉S中也有的元组,由只属于R的元组组成)、交;

专门的关系运算包括选择(找出满足给定条件的元组的操作,从行的角度)、投影(指定若干属性组成新的关系,从列的角度){二者操作对象只是一个表},联接(将两个关系模式拼接成一个更宽的关系模式,生成的新关系中包含满足联接条件的元组)、自然联接(去掉重复属性的等值连接,按照字段值对应相等为条件进行的联接为等值联接,最常用的连接运算);两个关系的笛卡尔乘积是指一个扩展表。在日常生活中:二维表、行、列。在关系数据库中(Access):数据表、纪录(数据,用于表示实体,数据表视图,每一个数据不可再分)、字段(重要,决定纪录,只能表示实体的某个属性,设计视图,原始数据和基本数据元素,如出生日期和年龄字段就不能同时出现),一个关系的逻辑结构就是一个二维表。

10、属性指实体具有的某种特性。如学生实体,可用学号、姓名等

来刻画。表之间的相关性(关联),通过同名同属性的字段建立的。

11、联系:一种是实体内部之间的联系,即字段间的联系;一种是

实体与实体间的联系,即记录间的联系。经过抽象画后,可归结

为三类:一对一联系(可以合并),如学校和校长之间的关系;一对多联系(常用,且纪录不重复的为父表):关联字段,确定地位,索引(目的是加快对表中纪录的查找或排序,太多索引会影响数据的更新操作,一般为不超过3个最多为5个),建立关系,如学校和教师之间的关系;多对多联系:如学生与所选课程之间的关系。

二、Access 2003数据库对象

1、所有的对象都存放在同一个数据库文件(扩展名为.mdb)中。

2、表是数据库的核心与基础数据源。

3、查询也是一种表,以表为数据来源的再生表,动态集合。

4、窗体(图形界面)、报表(通过打印机数据输出的一种形式)、

数据访问页。

5、宏:一个或多个操作命令的集合,其功能是使操作自动化;模

块:是用将Visual Basic for Applications声明和过程作为一个单元进行保存的集合,是应用程序开发人员的工作环境。

三、数据表

1、数据类型:文本(字段大小默认是50个字符,最长为255个字

符,一个汉字字符占2个字节,一个英文字符占1个字节)、备注(最长为65535个字符)、数字、日期/时间、货币(长度为8B)、自动编号(长度为4B)、是/否(长度为1B)、OLE对象(链接或嵌入如word文档、excel电子表格、图像、声音和其他二进制数据,最大可为1GB)、超链接、查阅向导。

2、创建数据表的类型:使用表向导创建(基于已有表来创建新表,

很大局限性),使用表设计器创建,通过输入数据直接创建表,导入表和链接表。

3、字段的命名长度最多只能为64个字符,可以包括字母、数字、

汉字、空格、其他字符,不能包括句号(.)、感叹号(!)、方括号([])、重音符号(′)。字段的属性:字段大小,只适用于数据类型为文本和数据的字段;格式属性:决定数据的打印和屏幕显示方式,不影响数据的保存方式;输入掩码(为了使输入的格式标准保持一致或希望检查输入时的错误):最多包含用三个分号分隔的节,第一节定义数据的格式,第二节0表示保存所有的显示字符,1或未输入任何数据表示只有输入的字符才保存,第三节指定为空格所显示的字符。只为文本和日期/时间提供,若有格式属性将在数据显示时优先于输入掩码的设置;常用输入掩码的含义:0表示只输入0—9的数字;9表示可输入数字或空格;#表示输入数字或空格,非必选项;L表示只输入字母A—Z;?表示可以输入字母A—Z 为可选项;A表示只能输入字母或数字;﹠(and的读法和意思)表示只能输入任一字符或空格;C表示可以输入任一字符或空格为可选项;>把所有字符转换为大写;<把所有字符转换为小写。标题属性,默认情况下就是字段名;默认值(OLE对象类型就不能设置);有效性规则(只允许定义一个条件表达式)和有效性文本;必填字段属性(是/否);索引(无、有重复、无重复);

4、筛选纪录的方法:按窗体筛选、按选定内容筛选、高级筛选/

排序。冻结命令是当水平滚动窗口时,冻结的字段仍是可见的。

5、表间的连接类型有内部连接、左边外部连接和右边外部连接。

6、当将表导出到excel时,用鼠标右键单击表名,在弹出的快捷

菜单中选择导出命令,在查找范围内找到要放的位置,在文件类型列表中选择microsoft excel,然后可以勾选带格式保存或者自动启动复选框,单击导出按钮。导入excel到表中:选择菜单栏文件、获取外部数据、导入、连续单击下一步两次、在现有的表中对应的列表中选择。

四、查询

1、查询是对数据进行一系列检索的操作。

2、类型: ①选择查询:从一个或多个表中检索数据并显示结果

(是一组数据记录),数据源也可是一个查询,可以选择表中的部分字段,通过选择一个表中的不同字段生成所需的多个表。关系运算符有=、<>(不等于)、<、<=、>、>=;逻辑运算符:Not、And、Or、In、Between(与and连用包括两边的数字)、Like(指定查找文本字段的字符模式,如like*网络*表示名称中含有网络二字的信息)、Is Null、Is Not Null。如张*或left([姓名],1)=张(查找姓张的人)、>#1988-12-31#(表示1988年以后出生的)、year(now())-year([出生日期])(表示年龄)、month([出生日期])和month(now())(表示本月生日)、date()表示系统日期、now()表示系统日期和时间。In(70,90)表示查询成绩为70或90的学生信息。

②参数查询:在执行时弹出对话框以提示用户输入参数,属于选择查询,[]作为条件参数查询。视图分为数据表视图、设计视图(表的显示窗口和设计网格)和SQL视图。单参数查询就是指定一个参数,多参数查询就是有多个相关联的表且指定多个参数。

③交叉表查询:计算和重构数据,可以简化数据分析。

④操作查询(结果在表中看):a、追加查询b、更新查询c、

删除查询d、生成表查询。

⑤SQL查询:structured query language结构化查询语言是

集数据定义、数据操纵和数据控制功能于一体的数据库语言,

可以用结构化语言(SQL语句)来查询、更新和管理。分为

传递查询(可以使用服务器能接受的命令)、数据定义查询、

联合查询(union)和子查询(子查询的select语句不能定义联合

查询或交叉表查询)。数据查询语句:select子句用于指定字

段,from指定数据的来源,where条件,group by分组,having

必须跟随group by 使用,用来限定分组必须满足的条件;

count的作用是返回集合中项目的数量,如统计每个学号出现

的次数;order by 默认升序进行排序(desc 降序);数据更新

语句:包括数据修改(命令语句update数据表set字段名=字

段值where条件表达式)、数据插入(insert)、数据删除

(delete);数据表的建立与删除语句:包括创建新表(create

table)、修改定义(alter table)、删除基本表(drop table)。五、窗体

1、窗体为用户提供操作界面的对象。单个窗体是纵栏式,连续窗

体是表格式。窗体的计时器触发事件激发的时间间隔是通过interval属性来设置的。

2、可以创建单一数据集的窗体,也可以创建多重数据集的窗体

(子窗体的数据源对象为一对多关系中的多端)。

3、窗体的每一部分称为一个节,最多可拥有5个节,分别为窗体

页眉(显示窗体的标题和使用说明等)、窗体页脚(命令按钮或接受输入的未绑定控件)、主体(显示窗体或报表的主要部分)、页面页眉和页面页脚(顶部、底部显示日期、页码等,主要用于打印)。

4、窗体控件:a、标签属于未绑定性控件,其值从一个纪录移动

到另一个纪录时,标签的值不会改变,显示的是静态数据。b、文本框用于输入和编辑数据,可以与用户进行交互操作,分为绑定文本框(又叫结合型文本框,与基础表、查询或SQL语句连接的控件)、未绑定文本框(又叫非结合型文本框,没有链接到某一字段,一般用来显示提示信息或接收用户输入数据)和计算文本框(在其控件来源中可以输入时间等函数组成的表达式)三种.c、列表框(可以包含一列或几列数据,用户只能从列表中选择值,而不能输入值)和组合框(既可以进行选择又可以输入文本)d、选项卡(分页和页面切换)e、图像f、直线及矩形框控件g、命令按钮h、选项组(选择列表工具)j、分页符。

5、控件种类:绑定型控件,主要用于显示、输入、更新数据库上

的字段;未绑定型控件,没有数据来源,可以用来显示信息、线条等;计算型控件,用表达式作为数据源,表达式可以利用窗体或报表所引用的表或查询字段中的数据,也可以利用窗体或报表上的其他控件中的数据。

6、`属性对话框包括格式属性、数据属性、其他属性、事件属性

和全部属性。

六、报表

1、报表是以打印方式展示数据的一种有效方式。

2、类型:纵栏式,表格式,组合、合计和汇总报表,图表、邮件标签。在报表设计的工具栏中,用于修饰版面以达到更好显示效果的控件是直线和矩形。

3、组成:报表页眉(大标题、图形或说明性文字等)、页面页眉(显示报表中的字段名称或对纪录的分组名称)、组页眉/组页脚(在该操作区域内实现报表的分组统计)主体、页面页脚(显示本页汇总说明)、报表页脚(显示整份报表的汇总说明)

4、在报表中要显示格式为:“第N页”的页码,页码格式设置为:=第&[page]&。Page表示当前页码,pages表示总页数。

七、数据访问页

1、它是直接与数据库中的数据联系的web页,用于查看操作来自Internet的数据,而这些数据保存在Access数据库中的。表、查询、窗体、报表均可另存为数据访问页的对象。

2、组成:正文,节,标题节,组页眉和页脚节,纪录导航节。有两

种视图是页视图和设计视图。

3、类型:交互式报表,数据输入,数据分析。

八、宏

1、组成:宏名、条件(在宏设计窗口中可以隐藏的列是宏名和条件)、操作(不可以省略)、操作参数。宏操作可以提示信息、打开报表、打开和关闭窗体,不能对错误进行处理。它是一个或多个操作的集合,其中每个操作都能自动实现特定的功能。

2、分类:操作序列宏(宏是操作序列的集合)、宏组(是宏的集合)、条件操作宏(带有条件的操作序列,带条件的操作是否执行取决于条件表达式结果的真假,而没有指定条件的操作则会无条件的执行)。在宏表达式中引用窗体控件值时的语法格式为forms!窗体名(如form1)!控件名(如txt1)[属性名]。若窗体名称为Form1,则将该窗体标题设置为“Access窗体”的语句是Form.caption=“Access窗体”,caption属性代表窗体的标题。创建宏时定义宏条件表达式,可以限制宏命令的操作范围。

3、打开窗体时依次发生的事件为打开open、加载load、调整大小resize、激活activate、成为当前current;关闭窗体时依次发生的事件为卸载unload、停用deactivate、关闭close。宏的命令通过事件触发。Msgbox(promt[,buttons]:显示包含警告、提示信息或其他信息的消息框,promt是必须的,buttons是可选的。事件是由ACCESS系统定义好的,可以被对象(是指access窗体或报表及其上的控件等对象)识别的动作,通常由过程或函数实现;不同对象可以有相同的事

件,相同事件也可以有不同的响应过程。方法描述了对象的行为,可以被对象执行的活动。

4、常用的宏命令:close(关闭)、runmacro(运行一个宏)、openform(在窗体视图、窗体设计视图、打印预览或数据表视图中打开窗体)、openreport(在设计视图或打印预览视图中打开报表或打印报表)、opentable(在数据表视图、设计视图或打印预览中打开表)、open query(打开查询)maximize(最大化活动窗口)、minimize(最小化活动窗口)、quit(退出access)、requery(用于实施指定控件重新查询)、autoexecbai(将最大或最小化窗口恢复到原始大小)、setvalue(为窗体或报表上的控件设置属性值的宏命令)。

5、在access中,自动启动宏的名称是autoexec,要想取消自动运行,打开数据库时按住shift键即可。

九、模块和VBA(Visual Basic for Application)编程

1、模块是将VBA声明(在模块加入过程,一个模块只可包含一个声明区域,但可包含一个或多个子过程)和过程作为一个单元进行保存的集合,是由过程组成的,每一个过程可以由一个函数(也称Function 过程,是能够返回具体值的过程)或一个子程序(也称Sub过程,是执行一项操作的过程)组成。过程是包含一系列VBA代码的单位。分类:类模块(包含属性、方法、事件的定义)和标准模块(分为子过程和函数)。

2、常用标准函数:算术函数绝对值abs、向下取整int(当参数为负数时,返回小于或等于参数值的第一个负数如int(-3.25)=-4)、返回数

值表达式的整数部分如fix(3.75)=3、平方根值spr、符号值sgn、四舍五入函数round(3.754,2)=3.75。类型转换函数asc字符串转换为字符代码函数、chr字符代码转换为字符函数、str数字转换成字符串函数、string由字符表达式首字符重复组成的指定长度的字符串、val 数字字符串转换成数值型数字(转换时可自动将字符串中的空格、制表符、换行符取掉当遇到它不能识别为数字的第一个字符时,停止读入字符串)、date value字符串转换成日期函数。Inputbox函数的返回值是一个数值或字符串(省略尾部﹩时,只能输入数值并且返回的也是数值;不省略,可输入数值或字符串,但其返回值是一个字符串);nz函数可以将null值转换为其他值并防止它通过表达式扩散;dsum 函数用于计算指定记录集(一个域)中的一组值的总和;dlookup函数用于从指定记录集(一个域)获取特定字段的值;rnd函数用于返回一个0~1的随机数,该数值为单精度类型;eof用来测试当前读写位置是否达到文件末尾的函数。Instr函数用字符串搜索。Docmd表示对象。

3、在VBA编程中以const关键字来定义符号常量,定义格式为const 符号常量名称=常量值;dim用来定义变量;public用来声明全局变量;static定义静态变量,变量命名不能包括空格或除了下划线字符外的任何其他标点符号,不能使用VBA的关键字,首字符必须是字母。在VBA程序设计中,如果变量不声明就使用是允许的,VBA会默认该变量为Variant数据类型或变体类型。If为VBA中关于流程控制语句的关键字。属于VBA函数的有IIf函数用于选择操作,Choose

函数用于选择操作并产生返回值,Switch函数用于多条件选择操作。On error goto(在遇到错误发生时转移到标号所指位置代码执行) 0(为标号,意识取消处理,若为next,意思是不考虑错误,并继续执行下一条语句);函数mid的语法为:mid(string字符串,start所取字符的开始位置,length所取字符的长度);Recordset表示数据操作返回的记录集;me.recordse t表示返回当前窗体的记录集;recordcount 表示返回记录集的个数。Runmacro为在VBA编程中检测字符串长度的函数名。Left(字符串,长度),right(字符串,长度);byref是传址调用,双向调用形式;byval是传值调用,单向作用形式。

4、VBA中常用的数据类型:byte类型占1字节,范围0到255;boolean(布尔类型)占2字节,取值为ture或false;integer(整型)占2字节,范围-32768到32767;long(长整型)占4字节;single(单精度浮点型)占4字节;double(双精度浮点型)占8字节;date(日期型)占8字节。VBA中运算符优先级的关系:算术运算符>连接运算符>比较运算符>逻辑运算符

5、在VBA调试过程中,逐过程调试的快捷键是shift+f8;跳出过程的快捷键ctrl+shift+f8;逐语句调试的快捷键是f8,在调试的过程能自动被检查出来的是语法错误,但无法检测逻辑错误。在VBA代码调试过程中,快速监视窗口(快速观察到变量或表达式的当前值)、监视窗口(可以动态了解一些变量或表达式的值的变化情况)、立即窗口(可以安排一些调试语句)、本地窗口(其内部自动显示出所有在当前过程中的变量声明及变量值)

6、在VBA中主要提供了3种数据库访问接口:开放数据库互连应用编程接口(ODBC API)、数据访问对象(DAO,它包含了一个复杂的可编程数据关联对象的层次,其中DBEngine对象处于最顶层。)、active数据对象(ADO,可以打开recordset对象的connection和command对象)。动态链接库(DLL)。VBA流程控制分为顺序、选择(分支)、循环控制3种。

十、公共基础知识

1、数据结构是指相互有关联的数据元素的集合。数据逻辑结构反映数据元素之间的逻辑关系;存储结构(又叫物理结构)为数据的逻辑结构在计算机存储空间中的存放形式,分为顺序存储、链式存储、索引存储和散列存储。

数据结构按各元素之间前后件关系的复杂度分为:线性结构(也称线性表,指有且只有一个根结点,且每个结点最多有一个直接前驱和一个直接后继的非空数据结构,线性表是一个有限序列,可以数据为空,但结构不能为空)和非线性结构。

2、算法指解题方案的准确而完整的描述,不等于程序且优先于程序。算法的时间复杂度(即对数据对象的运算和操作所需要的计算工作量)和空间复杂度(算法的控制结构所需的内存空间),二者虽然经常矛盾,但二者不存在必然的联系。

3、线性表顺序存储结构的特点:元素所占的空间必须连续;元素在存储空间的位置是按逻辑顺序依次存放的。插入运算(需要从最后的元素开始依次向后移动,直到需要插入的位置)和删除运算(把其后

的元素依次前移一个位置)。链式存储结构(称为线性链表)中存储空间可以不连续,各数据结点的存储顺序与数据间的逻辑关系可以不一致,后者由指针域确定,对其的插入与删除操作,不需要移动链表中的元素。

4、栈(stack)是一种特殊的线性表,其插入运算与删除运算都只在线性表的一端进行,又称为先进后出或后进先出。栈顶是允许插入与删除的一端,栈底是栈顶的另一端;空栈是栈中没有元素的栈。特点:栈顶元素是最后被插入和最早被删除的元素;栈底元素是最早被插入和最后被删除的元素;栈有记忆作用;在顺序存储结构下,栈的插入和删除运算不需移动表中其他数据元素;栈顶指针top动态反映了栈中元素的变化情况。

顺序存储和运算包括入栈运算、退栈运算和读栈顶运算。

7、队列指允许在一端插入,在另一端进行删除的线性表,又称先

进先出的线性表。队尾是允许插入的一端,排头是允许删除的一端;循环队列及其运算包括入队运算和退队运算,循环队列是队列的一种顺序存储的线性结构。

8、树是一种简单的非线性结构,树中有且仅有一个没有前驱的结

点称为根。父结点(每一个结点只有一个前件,无前件的结点只有一个,称为根结点)、子结点(每一个结点可以有多个后件,无后件的结点称为叶子结点)、树的度(所有结点最大的度)、树的深度(树的最大层次)。

二叉树是一种非线性结构,是有限的结点的集合,该集合为空

(空二叉树)或由一个根结点及两颗互不相交的左右二叉子树组成。可分为满二叉树和完全二叉树,它们可按层次进行顺序存储,其中满二叉树一定是完全二叉树,但完全二叉树不一定是满二叉树。特点:二叉树可为空,空的二叉树无结点,根结点的度为0,空的二叉树有且只有一个根结点;为非空树的根结点度最大为2。每个结点最多可有两颗子树,左子树和右子树;叶子结点的个数总是要比度为2的结点的个数多一个,叶子结点的度是1,。二叉树通常采用链式结构(称二叉链表),存储结点由数据域和指针域(左和右指针域)组成。9、查找技术分为顺序查找和二分查找(只适用于顺序存储结构的

线性表,且必须是有序表);排序技术分为交换类(冒泡排序和快速排序)、插入类(简单插入和希尔排序)和选择类排序法(简单选择排序和堆排序)、归并类、基数类。从平均时间而言,快速排序最佳,在最坏情况下的时间性不如堆排序和归并排序;当序列中的记录基本有序或元素个数较少时,冒泡排序和简单选择排序最佳。

10、程序设计是指设计、编制、调试程序的方法和过程,程序设计

方法主要有结构化程序设计方法、软件工程方法和面向对象法。

面向对象方法的本质是主张从客观世界的固有事物出发来构造系统,强调建立的系统能映射问题域。涉及的概念有:对象、类、消息、继承、实例、多态性、封装性。优点:与人类习惯的思维方法一致,稳定性好、可重用性好、可维护性好。软件的生命周期可以划分为:软件定义(问题的定义及规划)、软件开发(需求分析、软件

设计(概要设计和详细设计)、编码、软件测试(组装测试和确认测试))、软件维护(已经交付使用之后,为了改正错误或满足新的需要而修改软件的过程)。软件工程指采用工程的概念、原理、技术和方法指导软件的开发和维护,三个要素是方法、工具和过程,包括软件开发技术和软件工程管理。软件开发模型包括瀑布、快速原型法、螺旋模型。

结构化设计方法主要原则包括自顶向下、逐步求精、模块化(划分原则高内聚、低耦合)、限制使用goto语句,总的来说可使程序结构良好、易读、易理解、易维护。常用数据流程图(DFD,图形元素有加工、数据流、存储文件、源和潭)、数据字典(DD)、判断树和判断表等工具。结构化程序设计方法的三种基本控制结构为顺序结构、选择结构、循环结构。

软件设计就是把软件需求转换为软件表示的过程,包括概要设计(其中面向数据流的设计方法有变换型系统结构图和事务型数据流两种工具)和详细设计(程序流程图PDF(带箭头的线段表示控制流)、问题分析图PAD、N-S图(为了改进流程图在描述程序逻辑时的不灵活性)、过程设计语言PDL、HIPO图是过程设计的常用工具)。包括软件结构设计(定义软件系统各主要部件之间的关系)、数据设计(将分析时创建的模型转化为数据结构的定义)、接口设计(描述软件内部、软件和操作系统之间及软件与人之间如何通信)、过程设计(把系统结构部件转换成软件的过程性描述)

软件测试的目的是发现错误,应由独立的第三方进行测试工

作,从是否需要执行被测软件的角度,分为静态测试(不执行程序,而只是对程序文本进行检查)和动态测试;按功能分为白盒测试(又称结构测试,它是按照软件的内部逻辑设计和工作过程,检查软件内部成分)和黑盒测试(又称功能测试,,检测每个功能是否都能正常使用,着眼于程序外部结构,不考虑内部逻辑结构,主要针对软件界面和软件功能测试,方法有等价分类法、边值分析法、因果图法、错误推测法);程序调试的主要任务是诊断和改正程序中的错误,修改了错误后,必须进行回归测试。

南京理工大学《数据库系统基础教程》试题和答案

一、选择题60(选择一个最合适的答案,在答题纸上涂黑) 1.一个事务中的一组更新操作是一个整体,要么全部执行,要么全部不执行。这是事务的:A.原子性B.一致性 C.隔离性 D.持久性 2.在数据库的三级模式结构中,描述一个数据库中全体数据的全局逻辑结构和特性的是:A.外模式 B.模式 C.存储模式D.模式 3.关于联系的多重性,下面哪种说法不正确? A.一个多对多的联系中允许多对一的情形。 B.一个多对多的联系中允许一对一的情形。 C.一个多对一的联系中允许一对一的情形。 D.一个多对一的联系中允许多对多的情形。 4.考虑学校里的"学生"和"课程"之间的联系,该联系的多重性应该是: A. 一对一 B. 多对一 C. 一对多 D. 多对多 5.下面哪种约束要求一组属性在同一实体集任意两个不同实体上的取值不同。 A. 键(key)约束。 B. 单值约束。 C. 参照完整性。 D. 域(domain)约束 6.关系模型要求各元组的每个分量的值必须是原子性的。对原子性,下面哪种解释不正确:A.每个属性都没有部结构。 B.每个属性都不可再分解。 C.各属性值应属于某种基本数据类型。 D.属性值不允许为NULL。 7.对于一个关系的属性(列)集合和元组(行)集合,下面哪种说法不正确: A.改变属性的排列次序不影响该关系。 B.改变元组的排列次序不影响该关系。 C.改变元组的排列次序会改变该关系。 D.关系的模式包括其名称及其属性集合。 8.若R是实体集R1与R2间的一个多对多联系,将其转换为关系R',哪种说法不正确:A.R'属性应包括R1与R2的所有属性。 B.R'属性应包括R1与R2的键属性。 C.R1与R2的键属性共同构成R'的键。 D.R'的属性应包括R自身定义的属性。 9.关于函数依赖的判断,下面哪种说法不正确? A.若任意两元组在属性A上一致,在B上也一致,则有A → B成立。 B.若任意两元组在属性A上一致,在B上不一致,则A → B不成立。 C.若任意两元组在属性A上不可能一致,则不管在B上是否一致,有A → B成立。

数据库基本知识(自己整理,初学者可以看一下,基于某MySql)

数据库

1常见数据库 1.1MySql : 甲骨文 1.2Oracle: 甲骨文 1.3SQL Server: 微软 1.4Sybase: 赛尔斯 1.5DB2: IBM 2MySql基础知识 2.1关系结构数据模型数据库 2.2SQL(Structured Query Language)结构化查询语言2.2.1DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等 操作数据库 CREATE DATABASE [IF NOT EXISTS]mydb1 USE mydb1 DROP DATABASE [IF NOT EXISTS] mydb1

ALTER DATABASE mydb1 CHARACTER SET utf8 操作表 插入表 CREATE TABLE stu( sid CHAR(6), sname VARCHAR(20), age INT, gender VARCHAR(10) ); 更改表 ALTER TABLE t_user ADD (student varcher(20)) ALTER TABLE t_user MODIFY gender CHAR(20) ALTER TABLE t_user CHANGE gender VARCHER(20) ALTER TABLE t_user REMANE genderTO genders ALTER TABLE t_user DROP gender 删除表 DROP TABLE t_user 2.2.2DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据) 插入数据 INSERT INTO t_user VALUES() INSERT INTO 表名 VALUES(值1,值2,…)

SQL数据库基础知识集合

1、数据库简介: 数据库是专门开发数据管理的软件,或者说专门管理数据的软件就是数据库。 数据库存在的意义就是:减轻开发人员的负担。数据库是一个综合的软件,那么我们不需要队要进行2进制保存数据进行处理了,但是却是要与数据库产生交互,那么命令式SQL,有技巧的,数据库就是万物皆关系(面向对象,万物皆是对象)有所区别。 2、数据库的发展: 一开始的是层次化的数据与网状数据库,后来也发现使用确实很麻烦。 于是到了1970年EF.Cold博士(IBM公司的研究员)开创了关系性的数据库的先驱,发表了关系性数据库的论文,但是由于当时电脑硬件的局限性,大家觉得跑如此大的程序不值得。后来,Oracle(甲骨文)公司的创始人,拉里带领Oracle投入到关系型数据库的研发,并且得到了一个大客户—美国国防部。随即开始世界刮起了关系数据库的旋风,随后各个公司都纷纷推出自己的数据库系统。比如:IBM的DB2 ,还有风靡一时的DBS3。 但是随即出现不兼容的问题,由于最早的时候都没有进行没规范。所以到最后各个数据库巨头统一了操纵数据库的SQL(结构化Struct数据查询语言)变成了标准语言,而关系型数据库也俨然变成大家的宠儿,Oracle也从一个小公司,变成现在的数据库巨头,而我们的微软也推出了SQLServer。当然还有PHPer的最爱mySQL。但是mySQL被SUN,SUN 被Oracle收购,现在有免费版与收费专业版了。所以我们学习SQL语言的时候,先学共同点,再学特异性。各种数据库软件在使用上有一点区别。 3、数据库系统详解: 为适应数据处理的需要而发展起来的一种较为理想的数据处理的核心机构。计算机的高速处理能力和大容量存储器提供了实现数据管理自动化的条件。 数据库系统一般由4个部分组成: 数据库,即存储在磁带、磁盘、光盘或其他外存介质上、按一定结构组织在一起的相关数据的集合。(个体) 数据库管理系统(DBMS)。一组能完成描述、管理、维护子数据库的程序系统。它按照一种公用的和可控制的方法完成插入新数据、修改和检索原有数据的操作。 数据库管理员(DBA)。 用户和应用程序。(微软的称作SSMS) 4、数据库系统的基本要求是: 1、能够保证数据的独立性。数据和程序相互独立有利于加快软件开发速度,节省开发费用。 2、冗余数据少,数据共享程度高。 3、系统的用户接口简单,用户容易掌握,使用方便。 4、能够确保系统运行可靠,出现故障时能迅速排除,能够保护数据不受非受权者访问或破坏,能够防止错误数据的产生,一旦产生也能及时发现。 5、有重新组织数据的能力,能改变数据的存储结构或数据存储位置,以适应用户操作特性的变化,改善由于频繁插入、删除操作造成的数据组织零乱和时空性能变坏的状况。 6、具有可修改性和可扩充性、可维护性。 7、能够充分描述数据间的内在联系。 5、数据库(Database): 由众多的数据、数据表、约束、存储过程、函数、视图、索引构成的一个数据存储与交互单元,是按照数据结构来组织、存储和管理数据的仓库。 6、数据表(table): 数据表,实际上是一个二维表。一般是围绕一个事务、动作记录,或者是一个信息主题作为一个数据表。数据表由行与列构成。 7、列(column、field): 列,其实就是字段。也是决定了信息的基本单元。列,包含有数据类型的设定。 8、行(row、record): 行,实际上就是一条基本信息。一行包含了多列数据的存储的信息。所以一行也有一条记录之称。 9、行业(trade) 一个行业一种需求,没一个需求每一种数据库的设计模式与思想。每个行业的数据设计的重点都是不同的。侧重查询(要求低范式)还是操作(要求搞范式)就是自己选择的问题了。 10、索引(index) 索引是一个单独的、物理的数据库结构,它是某个表中一列或若干列值的集合和相应的指向表中物理标识这些值的数据页的逻辑指针清单。索引其实就是一个B+树,但是这个索引是N^n层数次方的。目的就是在数据库中划分出一定的区域优化查询。可以提升大量数据的查询速度。索引一般可以分为:基于字段优化查询速度的普通索引、唯一性索引、主键索引、全文索引、单列与多列索引。现在由于数据库系统的不断升级,我们只要设定索引就可以了,不需要特殊的维护。而且数据在查询的时候也会根据查询适当地选择是利用索引查询,还是仅仅是表查询。由于数据库系统的发展,系统内部已经自动帮我们完成对索引的维护。但是在设计的时候要考虑到索引的损耗问题。数据库DB就像是一个字典,索引就是根据指定字段制成的快速指向。由于只是指向数据对象标识,真正的数据是存储在DB中,所以查询速度极快。但是额外的内存与硬盘花销也是一个需要考虑的问题。比如:增加、删除、修改时数据库都要对索引进行维护,但是这样也是为了最后查询的效率的提升,特别适合W行级别的数据查询。而索引可以分为:隐式索引(针对单个字段)、唯一索引(唯一约束)、函数索引(函数(字段))、聚簇索引(主键)、组合索引(最多16个field)与全文索引(text)。一般索引会占用原数据库大小的20%。 11、视图(view) 固化的子查询,将一个子查询起了一个固化的名字,保存在数据库中,方便以后的使用。其实调用大量的Join来进行一个查询一般也是用视图。视图与索引都是为了优化查询的速度与语句。视图是优化语句,索引是优化单查速度。一般是DBA来设定数据库的视图,封装内部数据库的数据关系,范式修改数据容易了,视图让我们查询复杂关系的数据变得容易。 12、触发器(trigger) 触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由个事件来触发,比如当对一个表进行操作(insert,delete,update)时就会激活它执行。触发器经常用于加强数据的完整性约束和业务规则等。触发器可以从DBA_TRIGGERS ,USER_TRIGGERS 数据字典中查到。 13、SQLServer数据类型详解

数据库系统的基本知识

第一章数据库系统概论 本章目的在于使读者对数据库系统的基本知识能有一个较为全面的了解,为今后的学习和工作打下基础。本章重点介绍了有关数据库结构和数据库系统组织的基本知识和基本概念,以及常见的三种类型的数据库系统的特点。重点介绍关系数据库的有关知识。 1.1 数据管理技术发展史 随着生产力的不断发展,社会的不断进步,人类对信息的依赖程度也在不断地增加。数据作为表达信息的一种量化符号,正在成为人们处理信息时重要的操作对象。所谓数据处理就是对数据的收集、整理、存储、分类、排序、检索、维护、加工、统计和传输等一系列工作全部过程的概述。数据处理的目的就是使我们能够从浩瀚的信息数据海洋中,提取出有用的数据信息,作为我们工作、生活等各方面的决策依据。数据管理则是指对数据的组织、编码、分类、存储、检索和维护,它是数据处理的一个重要内容中心。数据处理工作由来以久,早在1880年美国进行人口普查统计时,就已采用穿孔卡片来存储人口普查数据,并采用机械设备来完成对这些普查数据所进行的处理工作。电子计算机的出现以及其后其硬件、软件的迅速发展,加之数据库理论和技术的发展,为数据管理进入一个革命性阶段提供有力的支持。根据数据和应用程序相互依赖关系、数据共享以及数据的操作方式,数据管理的发展可以分为三个具有代表性的阶段,即人工管理阶段、文件管理阶段和数据库管理阶段。

【1】人工管理阶段 这一阶段发生于六十年代以前,由于当时计算机硬件和软件发展才刚刚起步,数据管理中全部工作,都必须要由应用程序员自己设计程序完成去完成。由于需要与计算机硬件以及各外部存储设备和输入输出设备直接打交道,程序员们常常需要编制大量重复的数据管理基本程序。数据的逻辑组织与它的物理组织基本上是相同的,因此当数据的逻辑组织、物理组织或存储设备发生变化时,进行数据管理工作的许多应用程序就必须要进行重新编制。这样就给数据管理的维护工作带来许多困难。并且由于一组数据常常只对应于一种应用程序,因此很难实现多个不同应用程序间的数据资源共享。存在着大量重复数据,信息资源浪费严重。 【2】文件管理阶段 这一阶段发生于六十年代,由于当时计算机硬件的发展,以及系统软件尤其是文件系统的出现和发展,人们开始利用文件系统来帮助完成数据管理工作,具体讲就是:数据以多种组织结构(如顺序文件组织、索引文件文件组织和直接存取文件组织等)的文件形式保存在外部存储设备上,用户通过文件系统而无需直接与外部设备打交道,以此来完成数据的修改、插入、删除、检索等管理操作;使用这种管理方式,不仅减轻进行数据管理的应用程序工作量,更重要地是,当数据的物理组织或存储设备发生变化时,数据的逻辑组织可以不受任何影响,从而保证了基于数据逻辑组织所编制的应用程序也可以不受硬件设备变化的影响。这样就使得程序和数据之间具有了一定的相互独立性。 但由于数据文件的逻辑结构完全是根据应用程序的具体要求而设计,它的管理与维护完全是由应用程序本身来完成,因此数据文件的逻辑结构与应用程序密切相关,当数据的逻辑结构需要修改时,应用程序也就不可避免地需要进行修改;同样当应用程序需要进行变动时,常常又会要求数据的逻辑结构进行相应的变动。在这种情况下,数据管理中的维护工作量也是较大的。更主要的是由于采用文件的形式来进行数据管理工作,常常需要将一个完整的、相互关联的数据集合,人为地分割成若干相互独立的文件,以便通过基于文件系统的编程来实现来对它们的管理操作。这样做同样会导致数据的过多冗余和增加数据维护工作的复杂性。例如人事部门、教务部门和医务部门对学生数据信息的管理,这三个部门中

第一章ACCESS数据库基础知识

第1章数据库基础知识 数据库技术已经成为计算机科学和技术的—个重要分支,Microsoft Access作为一种关系型数据库管理系统是中小型数据库使用系统的理想开发环境 1.1.数据库基础知识 数据库,它能把大量的数据按照一定的结构存储起来,在数据库管理系统的集中管理下,实现数据共享那么,什么是数据库?什么是数据库管理系统呢? 1.1.1.计算机数据管理的发展 一、数据和数据处理 数据是指存储在某一种媒体上能够识别的物理符号。数据的概念包括两个方面:其一是描述事物特性的数据内容;其二是存储在某一种媒体上的数据形式。 数据处理是指将数据转换成信息的过程。对各种数据进行分类、收集、存储、加工和传播的一系列活动的总和。 二、计算机数据管理 数据处理的中心问题是数据管理。计算机对数据的管理是指如何对数据分类、组织、编码、存储、检索和维护。 1.人工管理: (1)数据不保存 (2)使用程序管理数据 (3)数据不共享 (4)数据不具有独立性 使用程序1 数据集1 使用程序2 数据集2 使用程序n 数据集n 2.文件系统 (1)数据可以长期保存 (2)程序和数据有一定的独立性 (3)数据的冗余度大

3. 数据库系统: 20世纪60年代后期以来计算机用于管理的规模更为庞大,使用越来越广泛,需要计算机管理的数据量急剧增长,同时多种使用、多种语言互相覆盖地共享数据集合的要求越采越强烈。为解决多用户、多使用共享数据的需求,出现了数据库技术和统一管理数据的专门软件系统数据库管理系统。 数据库技术的主要目的是有效地管理和存取大量的数据资源,包括:提高数据的共享性。使多个用户能够同时访问数据库中的数据;减小数据的冗余,以提高数据的一致性和完整性;提供数据和使用程序的独立性,从而减少使用程序的开发和维护代价。 在数据库系统中,数据已经成为多个用户或使用程序共享的资源,从使用程序中完全独立出来,由DBMS 统一管理。数据库系统数据和使用程序的关系如图。 4. 分布式数据库统 物理上分布、逻辑上集中的分布式数据库结构是一个逻辑上统一、地域上分布的数据集合,是把计算机网络环境中各个节点局部数据序的逻辑集合,同时受分布式数据库管理系统的统一控制和管理,把全局数据模式按数据来源和用途合理分布在系统的多个节点上,使大部分数据可以就地或就近存取。 5. 面向对象数据厍系统 数据据库技术和面向对象程序设计技术结合产生了面向对象数据库系统;面向对象数据库吸收了面向对象程序设计方法的核心概念和基本思想,采用面向对象的观点来描述现实世界实体(对象)的逻辑组织、对象之间的限制和联系等。 1.1.2. 数据库系统 DBMS 使用程序1 使用程序2 数据库 … 使用程序1 文件1 使用程序2 文件2 使用程序n 文件n 存取方法 ...… ...…

数据库面试基础知识总结

1. 数据抽象:物理抽象、概念抽象、视图级抽象,内模式、模式、外模式 提示: (1). 概念模式:(面向单个用户的) 是数据中全部数据的整体逻辑结构的描述。它由若干个概念记录类型组成。 (2). 外模式:(面向全局的) 是用户与数据库系统的接口,是用户用到的那部分数据的描述。它由若干个外部记录类型组成。(3). 内模式:(面向存储的) 是数据库在物理存储方面的描述,它定义所有的内部记录类型、索引、和文件的组织方式,以及数据控制方面的细节。 模式描述的是数据的全局逻辑结构,外模式描述的是数据的局部逻辑结构。对应与同一个模式可以有任意多个外模式。在数据库中提供两级映像功能,即外模式/模式映像和模式/内模式映像。对于没一个外模式,数据库系统都有一个外模式/模式映像它定义了该外模式与模式之间的对应关系。这些映像定义通常包括在各自外模式的描述中,当模式改变时,由数据库管理员对各个外模式/模式的映像做相应改变,可以使外模式保持不变,从而应用程序不必修改,保证了

数据的逻辑独立性。数据库中只有一个模式,也只有一个内模式,所以模式/内模式映像是唯一的,它定义了数据全局逻辑结构与存储结构之间的对应关系。当数据库的存储结构改变了,由数据库管理员对模式/内模式映像做相应改变,可以使模式保持不变,从而保证了数据的物理独立性。 2. SQL语言包括数据定义、数据操纵(Data Manipulation),数据控制(Data Control) 数据定义:Create Table,Alter Table,Drop Table, Craete/Drop Index等 数据操纵:Select ,insert,update,delete,数据控制:grant,revoke 3. SQL常用命令 CREATE TABLE Student( ID NUMBER PRIMARY KEY, NAME VARCHAR2(50) NOT NULL);//建表 CREATE VIEW view_name AS Select * FROM Table_name;//建视图 Create UNIQUE INDEX index_name ON TableName(col_name);//建索引 INSERT INTO tablename {column1,column2,…} values(exp1,exp2,…);//插入 INSERT INTO Viewname {column1,column2,…} values(exp1,exp2,…);//插入视图实际影响表 UPDA TE tablename SET name=’zang 3’ condition;//更新数据 DELETE FROM Tablename WHERE condition;//删除 GRANT (Select,delete,…) ON (对象) TO USER_NAME [WITH GRANT OPTION];//授权

数据库系统基础教程第八章答案

Section 1 Exercise 8.1.1 a) CREATE VIEW RichExec AS SELECT * FROM MovieExec WHERE netWorth >= 10000000; b) CREATE VIEW StudioPres (name, address, cert#) AS SELECT https://www.sodocs.net/doc/e613293283.html,, MovieExec.address, MovieExec.cert# FROM MovieExec, Studio WHERE MovieExec.cert# = Studio.presC#; c) CREATE VIEW ExecutiveStar (name, address, gender, birthdate, cert#, netWorth) AS SELECT https://www.sodocs.net/doc/e613293283.html,, star.address, star.gender, star.birthdate, exec.cert#, https://www.sodocs.net/doc/e613293283.html,Worth FROM MovieStar star, MovieExec exec WHERE https://www.sodocs.net/doc/e613293283.html, = https://www.sodocs.net/doc/e613293283.html, AND star.address = exec.address; Exercise 8.1.2 a) SELECT name from ExecutiveStar WHERE gender = ‘f’; b) SELECT https://www.sodocs.net/doc/e613293283.html, from RichExec, StudioPres where https://www.sodocs.net/doc/e613293283.html, = https://www.sodocs.net/doc/e613293283.html,; c) SELECT https://www.sodocs.net/doc/e613293283.html, from ExecutiveStar, StudioPres WHERE https://www.sodocs.net/doc/e613293283.html,Worth >= 50000000 AND StudioPres.cert# = RichExec.cert#; Section 2 Exercise 8.2.1 The views RichExec and StudioPres are updatable; however, the StudioPres view needs to be created with a subquery. CREATE VIEW StudioPres (name, address, cert#) AS SELECT https://www.sodocs.net/doc/e613293283.html,, MovieExec.address, MovieExec.cert# FROM MovieExec WHERE MovieExec.cert# IN (SELECT presCt# from Studio); Exercise 8.2.2 a) Yes, the view is updatable. b)

数据库基础知识试题(含答案)

数据库基础知识试题 部门____________ 姓名__________ 日期_________ 得分__________ 一、不定项选择题(每题分,共30分) 1.DELETE语句用来删除表中的数据,一次可以删除( )。D A .一行 B.多行 C.一行和多行 D.多行 2.数据库文件中主数据文件扩展名和次数据库文件扩展名分别为( )。C A. .mdf .ldf B. .ldf .mdf C. .mdf .ndf D. .ndf .mdf 3.视图是从一个或多个表中或视图中导出的()。A A 表 B 查询 C 报表 D 数据 4.下列运算符中表示任意字符的是( )。B A. * B. % C. LIKE 5.()是SQL Server中最重要的管理工具。A A.企业管理器 B.查询分析器 C.服务管理器 D.事件探察器 6.()不是用来查询、添加、修改和删除数据库中数据的语句。D A、SELECT B、INSERT C、UPDATE D、DROP 7.在oracle中下列哪个表名是不允许的()。D A、abc$ B、abc C、abc_ D、_abc 8.使用SQL命令将教师表teacher中工资salary字段的值增加500,应该使用的命令 是()。D A、Replace salary with salary+500 B、Update teacher salary with salary+500 C、Update set salary with salary+500 D、Update teacher set salary=salary+500 9.表的两种相关约束是()。C

数据库基础知识和sql语句

第一章数据库基础知识 本章以概念为主,主要是了解数据库的基本概念,数据库技术的发展,数据模型,重点是关系型数据。 第一节:信息,数据与数据处理 一、信息与数据: 1、信息:是现实世界事物的存在方式或运动状态的反映。或认为,信息是一种已经被加工为特定形式的数据。 信息的主要特征是:信息的传递需要物质载体,信息的获取和传递要消费能量;信息可以感知;信息可以存储、压缩、加工、传递、共享、扩散、再生和增值 2、数据:数据是信息的载体和具体表现形式,信息不随着数据形式的变化而变化。数据有文字、数字、图形、声音等表现形式。 3、数据与信息的关系:一般情况下将数据与信息作为一个概念而不加区分。 二、数据处理与数据管理技术: 1、数据处理:数据处理是对各种形式的数据进行收集、存储、加工和传输等活动的总称。 2、数据管理:数据收集、分类、组织、编码、存储、检索、传输和维护等环节是数据处理的基本操作,称为数据管理。数据管理是数据处理的核心问题。 3、数据库技术所研究的问题不是如何科学的进行数据管理。 4、数据管理技术的三个阶段:人工管理,文件管理和数据库系统。 第二节:数据库技术的发展 一、数据库的发展:数据库的发展经历了三个阶段: 1、层次型和网状型: 代表产品是1969年IBM公司研制的层次模型数据库管理系统IMS。 2、关系型数据型库: 目前大部分数据库采用的是关系型数据库。1970年IBM公司的研究员E.F.Codd提出了关系模型。其代表产品为sysem R和Inges。 3、第三代数据库将为更加丰富的数据模型和更强大的数据管理功能为特征,以提供传统数据库系统难以支持的新应用。它必须支持面向对象,具有开放性,能够在多个平台上使用。 二、数据库技术的发展趋势: 1、面向对象的方法和技术对数据库发展的影响: 数据库研究人员借鉴和吸收了面向对旬的方法和技术,提出了面向对象数据模型。 2、数据库技术与多学科技术的有机组合: 3、面向专门应用领域的数据库技术 三、数据库系统的组成:

第1章数据库基础知识

第 1 章数据库基础知识 数据库是20 世纪60 年代后期发展起来的一项重要技术,70 年代以来数据库技术得到迅猛发展,已经成为计算机科学与技术的一个重要分支。经过30 多年的发展,现已经形成相当规模的理论体系和应用技术,不仅应用于事务处理,并且进一步应用到人工智能、情报检索、计算机辅助设计等各个领域。本章主要介绍数据库的基本概念和基本理论,并结合Microsoft Access 讲解与关系数据库相关的基本概念。 1.1 数据库系统概述 数据库能把大量的数据按照一定的结构存储起来,开辟了数据处理的新纪元。可以直观地理解数据库为一个存放数据的仓库,只不过这个仓库是在计算机的大容量存储器上。数据处理的基本问题是数据的组织、存储、检索、维护和加工利用,这些正是数据库系统所要解决的问题。 1.1.1 计算机数据管理的发展 一、数据与数据处理 数据是指存储在某一种介质上能够被识别的物理符号。数据的种类很多,不仅包括数字、字母、文字和其他特殊字符组成的文本形式,而且还包括图形、图像、动画、影像、声音等多媒体形式,但是使用最多、最基本的仍然是文字数据。 信息是经过加工处理的有用数据。数据只有经过提炼和抽象变成有用的数据后才能成为信息。信息仍以数据的形式表示。 数据处理是指将数据加工并转换成信息的过程。数据处理的核心是数据管理。计算机对数据的管理是指如何对数据分类、组织、编码、存储、检索和维护。 二、数据管理技术的发展 计算机在数据管理方面经历了由低级到高级的发展过程。计算机数据管理随着计算机软硬件技术的发展,数据管理技术的发展大致经历了人工管理、文件系统和数据库系统、分布式数据库系统和面向对象数据库系统5 个阶段。 1. 人工管理 20 世纪50 年代以前,计算机主要用于科学计算。当时的硬件状况是,外存储器只有纸带、卡片、磁带,没有直接存取设备。软件状况是,没有操作系统以及管理数据的软件。 人工管理阶段具有的特点是:数据与程序不具有独立性,一组数据对应一组程序。数据不能长期保存,程序运行结束后就退出计算机系统,一个程序中的数据无法被其他程序使用,因此程序与程序之间存在大量的重复数据,称为数据冗余。 2. 文件系统 20 世纪50 年代后期到60 年代中期,计算机的应用范围逐渐扩大,大量地应用于管理中。这时,在硬件上出现了磁鼓、磁盘等直接存取数据的存储设备;在软件方面,在操作系统中已经有了专门的数据管理软件,一般称为文件系统;处理方式上不仅有了文件批处理,而且能够联机实时处理。

数据库系统基础教程课后答案

Solutions Chapter 4

4.1.1 4.1.2 a) b)

In c we assume that a phone and address can only belong to a single customer (1-m relationship represented by arrow into customer).

In d we assume that an address can only belong to one customer and a phone can exist at only one address. If the multiplicity of above relationships were m-to-n, the entity set becomes weak and the key ssNo of customers will be needed as part of the composite key of the entity set. In c&d, we convert attributes phones and addresses to entity sets. Since entity sets often become relations in relational design, we must consider more efficient alternatives. Instead of querying multiple tables where key values are duplicated, we can also modify attributes: (i) Phones attribute can be converted into HomePhone, OfficePhone and CellPhone. (ii) A multivalued attribute such as alias can be kept as an attribute where a single column can be used in relational design i.e. concatenate all values. SQL allows a query "like '%Junius%'" to search the multiple values in a column alias.

数据库系统基本知识讲解

三、数据库的概念与用途 数据库的概念 什么是数据库呢当人们从不同的角度来描述这一概念时就有不同的定义(当然是描述性的)。例如,称数据库是一个“记录保存系统”(该定义强调了数据库是若干记录的集合)。又如称数据库是“人们为解决特定的任务,以一定的组织方式存储在一起的相关的数据的集合”(该定义侧重于数据的组织)。更有甚者称数据库是“一个数据仓库”。当然,这种说法虽然形象,但并不严谨。严格地说,数据库是“按照数据结构来组织、存储和管理数据的仓库”。在经济管理的日常工作中,常常需要把某些相关的数据放进这样“仓库”,并根据管理的需要进行相应的处理。例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表中,这张表就可以看成是一个数据库。有了这个“数据仓库”我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种“数据库”,使其可以利用计算机实现财务、仓库、生产的自动化管理。 给数据库下了一个比较完整的定义:数据库是存储在一起的

相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个“数据库集合”。 数据库的优点 人事基本档案 使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间;实现数据资源的充分共享等

VB数据库基础知识

数据库基础知识 几乎所有的商业应用程序都需要处理大量的数据,并将其组织成易于读取的格式。这种要求通常可以通过数据库管理系统(MDBS)实现。MDBs是用高级命令操作表 格式数据的机制。数据库管理系统隐藏了数据在数据库中的存放方式之类的底层细节,使编程人员能够集中精力管理信息,而不是考虑文件的具体操作或数据连接关系的维护。 下面,先介绍几个基本的概念。 数据库:数据库就是一组排列成易于处理或读取的相关信息。数据库中的实际数据存放成表格(table),类似于随机访问文件。表格中的数据由行(row)和列(column)元素组成,行中包含结构相同的信息块,类似于随机访问文件中的记录,记录则是一组数值(或称为字段的集合),如图1所示: 图1:数据库和表格结构的图形表示 记录集:记录集(RecordSet)是表示一个或几个表格中的对象集合的多个对象。在数据库编程中,记录集等于程序中的变量。数据库中的表格不允许直接访问,而只能通过记录集对象进行记录的浏览和操作。记录集是由行和列构成的,它和表格相似,但可以包含多个表格中的数据。如图2所示网格中的内容来自于一个表格,形成一个记录集。图中所示的查询结果是所有作者的资料。 图2:BIBlIO数据库的Authors表,所选的行是Authors的相关记录 注意:可以把记录看成一种浏览数据库的工具,用户可以根据需要指定要选择的数据,记录集的类型有三类:

(1)DynaSets:这是可修改的显示数据; (2)SnapShots:这是静态(只读)的显示数据; (3)Tables:这是表格的直接显示数据。 DynaSets和SnapShots通常用SQL(结构化查询语言)语句生成,SQL将在以后介绍,但现在只要知道SQL语句是从指定数据库中读取数据的标准命令即可。DynaSets在每次用户数据库时更新,而对记录集的改变会反映在基础表格中。SnapShots是同一数据的静态显示,其中包含生成snapshots时请求的记录(基础表格中的改变不会在SnapShots中反映出来),自然也不会更改SnapShots。DynaSets是最灵活、最强大的记录集。虽然Table类型记录集需要大量间接成本。SnapShots是最缺少灵活性的记录集,但所要的间接成本最少。如果不需要更新数据库,只要浏览记录,可以用SnapShots这种类型。 SnapShots类型还有一个变形正向型SnapShots,这种类型SnapShots的限制更多,只能正向移动,但速度更快。正向型SnapShots可以用于要扫描多个记录并顺序处理(进行数值计算,复制所选记录到另一个表格中,等等)数据库记录的情况。这个记录集不提供反向方法,所以间接成本少。 Tables型记录组可以用于调用数据库表格。Tables比其他记录集类型的处理速度都快,可以保持表格与数据库中的数据同步,也可用于更新数据库。但Table 只限于一个表格。此外,通过Tables型记录集访问表格时,可以利用Tables 的索引值进行快速查找。 https://www.sodocs.net/doc/e613293283.html,数据集(Datasets)的概念 1.基本概念 数据集是一种离线了的缓存存储数据,它的结构和数据库一样,具有表格、行、列的一种层次结构,另外还包括了为数据集所定义的数据间的约束和关联关系。用户可通过.NEt框架的命名空间(NameSpace)来创建和操作数据集。 用户可以通过一些诸如属性(properties)、集合(collections)这些标准的构成来了解Dataset这个概念。如: (1)数据集(DataSet)包括数据表格的Tables这个集合以及relation的"Relations"集合。 (2)DataTable类包括了数据表格row的"Rows"集合,数据columns的"Column" 集合,以及数据relation的"ChildRelations"和"ParentRelations"集合。(3)DataRow类包括"RowState"属性,这些值是用来显示数据表格首次从数据库 被加载后是否被修改过,这个属性的值可以为:"Deleted"、"Modified"、"New"以及"Unchanged"。 2.定义(Type)和未定义(Untyped)的数据集 数据集有定型的和未定型的之分,定型的数据集是基本的DataSet类的一个子类,并且含有图表(.xsd文件),它用来描述数据集所拥有的表格的结构。这些图表 文件,包括了表的名字和列名、列所代表的数据的类型信息,以及数据间的约束关系。而一个未定型的数据集则没有这些图表的描述。 在程序中用户可以使用任意两种类型的数据集,然而,定型的数据集可以使得用户对数据的操作更加明了,并且可以减少一些不必要的错误,定型的数据集可以生成一些对象模型,这些模型的第一层次的类(first-class)就是数据集所包含

数据库技术与应用》知识点总结

《数据库技术与应用》知识点总结第一章数据库基础 1.基本概念: 数据:数据泛指对客观事物的数量、属性、位置及其相互关系的抽象表示,以适合于用人工或自然的方式进行保存、传递和处理。数据是形成信息的源泉,信息是有价值的数据是数据的内涵。 信息:有一定含义的、经过加工处理的、对决策有价值的数据 数据库:数据库是长期存储在计算机内、有组织的可共享的数据集合。 数据库管理系统(DBS的核心):专门用于管理数据可的计算机系统软件。 数据库系统:带有数据库的计算机系统,一般由数据库、数据库管理系统(及其开发工具)、相关硬件、软件和各类人员组成。 2.数据管理的发展阶段 1.人工管理阶段:没有直接存储设备、操作系统、管理软件 2.文件系统阶段:把计算机众多数据组织成相互独立的数据文件 3.数据库系统阶段:一定的格式、统一管理、冗余度小 4.分布式数据库阶段:物理上分离、逻辑上统一 5.面向对象数据库阶段 3. 数据模型: (1)基本概念: 数据模型:数据库系统的形式框架,用来描述数据的一组概念和定义,包括描述数据、数据联系、数据操作、数据语义以及数据一致性的概念工具。 概念模型:按用户的观点对数据和信息进行建模,是现实世界到信息世界的第一层抽象,强调语义表达功能。 实体:客观存在的并且可以相互区别的“事物” 实体集:性质相同的同类实体的集合 属性:描述实体的特征 域:属性的取值范围 主键:用来唯一标识一个元组的某个属性或属性组合 联系(1:1,1:n,m:n):实体集之间的关系,反应事物之间的相互关联,联系也是主体,也可具有属性

关系模型:采用二维表来表示实体以及实体之间关系的模型。本质是一张表。 关系、关系模式:1:1关系名(属性1,属性2,……) 1:n 将1的主键放入n中学生(班级编号,……) n:m 将实体的主键放入关系的属性中 (2)E-R模型:能根据具体问题构建E-R模型、画出E-R图 实体集:矩形框 属性:椭圆 联系:菱形 (3)关系模型的数据结构、关系的性质 数据查询、数据插入、数据删除、数据修改 关系运算:选择(减少个体保留所有属性)、投影(所有个体的部分属性)、联结 (4)E-R模型转换为关系模型 (5)关系模型的完整性(实体、参照、自定义) 实体:主键不能为空 参照:外键为空或在其担任主键的实体集中存在 自定义:用户自己定义的语义要求 第二章A ccess数据库与表的操作 1. Access数据库设计的一般步骤 2. 基本概念:Access数据库、表、记录、字段 3. 使用表设计器创建表 (1)字段名命名规则 不能空格开头、不能用.!()[]、最长64个字符 (2)字段类型:文本、数字、日期/时间、是/否、查阅向导(备选项中选择) (3)字段属性:字段大小、输入掩码(控制数据的输入)、有效性规则(规范、核查)、有效性文本(提示信息)、默认值、索引(搜索或排序的根据,加快查询速度)、必填字段 (4)设置主键 4.建立表间关系:关联字段、实施参照完整性

数据库模型基础知识及数据库基础知识总结

数据库模型基础知识及数据库基础知识总结 数据库的4个基本概念 1.数据(Data):描述事物的符号记录称为数据。 2.数据库(DataBase,DB):长期存储在计算机内、有组织的、可共享的大量数据的集合。 3.数据库管理系统(DataBase Management System,DBMS 4.数据库系统(DataBase System,DBS) 数据模型 数据模型(data model)也是一种模型,是对现实世界数据特征的抽象。用来抽象、表示和处理现实世界中的数据和信息。数据模型是数据库系统的核心和基础。数据模型的分类 第一类:概念模型 按用户的观点来对数据和信息建模,完全不涉及信息在计算机中的表示,主要用于数据库设计现实世界到机器世界的一个中间层次 ?实体(Entity): 客观存在并可相互区分的事物。可以是具体的人事物,也可以使抽象的概念或联系 ?实体集(Entity Set): 同类型实体的集合。每个实体集必须命名。 ?属性(Attribute): 实体所具有的特征和性质。 ?属性值(Attribute Value): 为实体的属性取值。 ?域(Domain): 属性值的取值范围。 ?码(Key): 唯一标识实体集中一个实体的属性或属性集。学号是学生的码?实体型(Entity Type): 表示实体信息结构,由实体名及其属性名集合表示。如:实体名(属性1,属性2,…) ?联系(Relationship): 在现实世界中,事物内部以及事物之间是有联系的,这些联系在信息世界中反映为实体型内部的联系(各属性)和实体型之间的联系(各实体集)。有一对一,一对多,多对多等。 第二类:逻辑模型和物理模型 逻辑模型是数据在计算机中的组织方式

数据库系统基本知识讲解

数据库系统基本知识讲解 This manuscript was revised by the office on December 10, 2020.

三、数据库的概念与用途 数据库的概念 什么是数据库呢当人们从不同的角度来描述这一概念时就有不同的定义(当然是描述性的)。例如,称数据库是一个“记录保存系统”(该定义强调了数据库是若干记录的集合)。又如称数据库是“人们为解决特定的任务,以一定的组织方式存储在一起的相关的数据的集合”(该定义侧重于数据的组织)。更有甚者称数据库是“一个数据仓库”。当然,这种说法虽然形象,但并不严谨。严格地说,数据库是“按照数据结构来组织、存储和管理数据的仓库”。在经济管理的日常工作中,常常需要把某些相关的数据放进这样“仓库”,并根据管理的需要进行相应的处理。例如,企业或事业单位的人事部门常常要把本单位职工的基本情况(职工号、姓名、年龄、性别、籍贯、工资、简历等)存放在表中,这张表就可以看成是一个数据库。有了这个“数据仓库”我们就可以根据需要随时查询某职工的基本情况,也可以查询工资在某个范围内的职工人数等等。这些工作如果都能在计算机上自动进行,那我们的人事管理就可以达到极高的水平。此外,在财务管理、仓库管理、生产管理中也需要建立众多的这种“数据库”,使其可以利用计算机实现财务、仓库、生产的自动化管理。

给数据库下了一个比较完整的定义:数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害的或不必要的冗余,并为多种应用服务;数据的存储独立于使用它的程序;对数据库插入新数据,修改和检索原有数据均能按一种公用的和可控制的方式进行。当某个系统中存在结构上完全分开的若干个数据库时,则该系统包含一个“数据库集合”。 数据库的优点 人事基本档案 使用数据库可以带来许多好处:如减少了数据的冗余度,从而大大地节省了数据的存储空间;实现数据资源的充分共享等等。此外,数据库技术还为用户提供了非常简便的使用手段使用户易于编写有关数据库应用程序。特别是近年来推出的微型计算机关系数据库管理系统dBASELL,操作直观,使用灵活,编程方便,环境适应广泛(一般的十六位机,如

相关主题