数据库技术及应用教材(第2版)各章节知识点第1章数据库系统概述1.1数据库管理技术的产生和发展1.1.1人工管理阶段(20世纪50年代之前)特点:①数据不保存②数据不具独立性③数据不共享1.1.2文件管理/系统阶段(20世纪50年代-60年代中期)特点:①数据可以保存②独立性依然差③冗余量大1.1.3数据库管理阶段20世纪60年代以后1.2.1基本概念1.数据Data2.数据库Database,DB3.数据库管理系统DatabaseManagementSystem,DBMS功能:数据定义、数据操纵、数据控制、数据通信4.数据库系统DatabaseSystem,DBS包括数据库、数据库管理系统、应用系统、数据库管理员(DatabaseAdministrator,DBA)和用户1.2.2数据库系统的特点1.数据共享性好2.数据独立性强3.数据结构化4.统一的数据控制功能1.2.3数据库系统的组成(同上)1.2.4数据库系统的抽象级别DBMS中的数据被描述为逻辑模式、物理模式和外模式三级抽象1.3数据模型(概念模型、逻辑模型和物理模型)1.3.1基本组成1.数据结构2.数据操作3.数据约束1.3.2层次模型1.3.3网状模型1.3.4关系模型(应用最广泛)1.3.5面向对象模型1.3.6对象关系模型第2章关系数据库2.1关系数据模型的基本概念关系数据库系统是支持关系模型的数据库系统关系模型由数据结构、关系操作和完整性约束3部分组成1.数据结构(二维表)(1关系(2元组(3属性(4键((1)超键:能唯一标识元组的属性过属性集((2)候选键((3)主键((4)外键(5域(6分量(7关系模型关系数据库:有若干个关系或二维表彼此关联组成的数据库。2.关系操作(一次一集合)查询(最主要):选择、投影、连接、除、并、交、差更新:插入、删除、更新3.完整性约束(1实体完整性(对主键的约束:不能空不能重)(2参照完整性(对外键的约束)(3用户自定义完整性(删除约束、更新约束、插入约束)2.2关系代数2.2.1传统的集合运算1.并∪2.差-3.交∩4.笛卡尔积2.2.2专门的关系运算1.选择(水平分割)2.投影(垂直分割)∏3.连接∞第3章Access数据库管理系统3.1Access简介3.1.1Access功能及特性1.界面友好、易操作2.方便数据共享3.简化安全设置4.SharePoint高速在线以及离线应用5.走向网络3.1.2Access的安装1.安装环境(office)2.安装方法3.1.3Access的集成环境3.1.4Access数据对象1.表Table(其他对象的基础)2.查询Query3.窗体Form4.报表Report(使数据处理的结果多样化)5.宏Macro6.页Web7.模块Module3.2创建数据库3.2.1直接创建空数据库3.2.2利用模块创建数据库3.2.3Access数据库的打开方式①以只读方式打开②以独占方式打开③以独占只读方式打开第4章表的操作4.1表的结构与创建4.1.1表的构成(1)约束条件1.列级约束1.非空约束2.唯一约束(也可以是表级约束)3.检查约束4.主键约束(也可以是表级约束)5.外键约束(也可以是表级约束)2.表级约束(主键约束)(2)索引(3)关联关系4.1.2Access中的数据类型4.1.3创建表结构(1)数据表视图(2)利用表设计视图(3)使用导入表创建表4.2表结构的维护4.2.1字段名、类型和长度的修改与插入、删除和移动字段1.删除字段Delete2.插入字段3.移动字段4.修改字段名、长度或数据类型4.2.2字段标题与输入输出格式设置1.字段标题设置2.输入/输出格式设置3.自定义格式输入/输出格式4.输入掩码的设置输入掩码的格式符号4.2.3有效性规则与有效性文本有效性规则设置有效性文本设置0输入一个非零值0or100值必须为0或大于100#1/1/2000#输入一个2000年之前的日期=#1/1/2000#and#1/1/2001#日期必须是在2000年内StrComp(UCase([LastName]),[LastName],0)=0“LastName”字段中的数据必须大写Access表达式中使用的运算符运算符实例说明使用数据类型+x+y求x与y的和数字-x-y求x-y的差数字*X≠y求x和y的积数字/x/y求x除以y的商数字\x\y求x除以y商的整数部分数字Modxmody求x除以y商的余数部分数字^X^y求x的y次方数字教研室个数2依据表达式是否成立,结果为true或false。参与比较的两个数的数据类型相同=教研室个数=2同上同上教研室个数2同上同上=教研室个数=2同上同上=教研室个数=同上同上教研室个数2同上同上BetweenXandY教研室个数BETWEEN2AND5判定教研室个数A是否在[2,5]范围内同上Like姓名like“刘*”模糊查找文本类型&“First”&”Name”字符串连接文本类型AndXandYX,Y为比较表达式或逻辑表达式,两个都取值为true时,结果为true,否则结果为false。关系表达式或逻辑表达式OrXorYX,Y为比较表达式或逻辑表达式,两个都取值为false时,结果为false,否则结果为true。同上NotNotXX取反同上Isnull姓名isnull或姓名isnotnull判定名字字段是否为空,为空时取值为true判定名字字段是否为空,为空时取值为false同上Access表达式中常用函数函数函数说明应用实例返回结果Round(数值表达式)对操作数四舍五入取整Round(-4.2)Round(7.8)-4,8Len(字符串表达式或变量)检测字符串长度,返回字符串表达式或变量所含字符数。对于变量,其长度为定义长度。Len(‘abcedgt’)9Left(字符串表达式或变量N)从字符串左起截取N个字符。如果N为0,返回零长度字符串;如果N大于等于字符串长度,返回整个字符串。Left(‘abcedgt’,4)‘abce’Right(字符串表达式或变量N)从字符串右起截取N个字符。如果N为0,返回零长度字符串;如果N大于等于字符串长度,返回整个字符串。Right(‘abcedgt’,3)‘gt’Mid(字符串表达式或变量,N1,N2)从字符串左边第N1个字符起截取N2个字符。如果N1大于字符串长度,返回零长度字符串;如果省略N2,返回左边第N1个字符起所有的字符。Mid(‘abcedgt’,3,4)‘ced’Ucase(字符串表达式)将字符串中的小写字母转换为大写字母Ucase(“ABcd”)“ABCD”Lcase(字符串表达式)将字符串中的大写字母转换为小写字母Lcase(“ABcd”)“abcd”Str(数值表达式)将数值表达式值转换为字符串Str(-88)“-88”Date()或Date系统当前日期Time()或Time系统当前时间Now系统当前日期和时间Year(日期表达式)返回日期表达式的年份Year(#2009-7-25#)2009Month(日期表达式)返回日期表达式的月份Month(#2009-7-25#)7Day(日期表达式)返回日期表达式的天数Day(#2009-7-25#)25Weekday(日期表达式)返回数值(1~7)Weekday(#2009-7-25#)64.2.4其他约束1.设置字段必填2.“小数位数”属性3.指定主键4.在“数据表”视图中改变字段名称4.3表数据的输入与维护4.3.1数据录入与编辑1.数据修改2.数据复制3.数据的查找操作(1)按记录号查找数据(2)查找指定内容(3)查找空字段或空字符串(4)使用通配符4.3.2导入与导出数据及链接外部数据1.导入Excel表2.导出表操作4.3.3格式化数据表1.更改行高和列宽2.改变字段次序3.隐藏/显示列4.冻结/解冻列5.设置数据表格式4.4记录操作4.4.1记录排序4.4.2筛选记录4.5表的索引与关联4.5.1索引相关知识1.索引的概念2.索引的分类(聚集/非聚集)3.索引的创建方法4.5.2创建表间的关联关系1.关联关系分类(1)一对一(2)一对多(3)多对多2.关联关系的建立方法4.5.3子表第5章数据库设计5.1数据库设计概述5.1.1数据库设计的方法5.1.2数据库设计的步骤(1)需求分析阶段(2)概念结构设计阶段(3)逻辑结构设计阶段(4)物理结构设计阶段(5)数据库实施阶段(6)数据库运行维护阶段5.2需求分析(1)用户的信息要求(2)处理要求(3)安全性要求(4)完整性要求5.3概念结构设计5.3.1E-R模型(实体-联系模型Entity-RelationshipModel)1.实体:客观存在并能够相互区别的事物2.属性:实体用来刻画的一组特性3.实体集:表示具有相同属性的同一类事物2.联系与联系集5.2.3E-R图(矩形:实体集;椭圆形:属性;菱形:联系集)5.4逻辑结构设计5.4.1E-R模型与关系模型的转换5.4.2规范化基础1.数据库设计中的问题2.函数依赖的基本概念3.范式及其关系4.规范化方法5.4.3逻辑结构详细设计5.5物理结构设计5.6数据库实施5.7数据库维护第6章数据查询6.1查询概述1.选择查询2.生成表查询3.追加查询4.更新查询5.交叉表查询6.删除查询6.2创建与维护查询6.2.1使用查询向导创建查询6.2.2使用设计视图创建查询6.3查询条件6.3.1查询条件的设置6.3.2在查询中执行计算6.4动作查询(操作查询)的设计6.4.1追加查询6.4.2更新查询6.4.3删除查询6.4.4生成表查询6.5SQL特定查询的设计(1)联合查询(2)传递查询(3)数据定义查询(4)子查询第7章SQL关系数据库标准语言7.1SQL的概述7.1.1SQL的特点结构化查询语言(StructuredQueryLanguage)1.高度综合2.非过程化3.采用面向集合的操作方式7.1.2SQL的功能7.2SQL的数据定义7.2.1SQL的数据类型数据类型存储大小(字节)Access的中文数据类型Binary1Bit、Boolean、Logical、Logicali、YesNo1是/否类型Byte、Integeri、Tinyint1数字(字节)Money、Currency8货币Datetime、Date、Time8日期/时间Uniqueidentifier、Guid128Real、Float4、Single4数字(单精度)Float、Float8、Double8数字(双精度)Smallint、Short、Integer22数字(整型)Integer、Int、Long、Integer44数字(长整型)Decimal17整型(小数)7.2.2数据定义1.建立数据表(1)NOTNULL是列级约束(2)PRIMARYKEY是表级或列级约束(3)FOREIGNKEY是外键约束(4)CHECK是域完整性约束(5)UNIQUE是唯一性约束字段名数据类型长度是否有默认值规则索引备注StaffID文本12无无主键索引职员编号Name文本8无唯一姓名Birthdate日期/时间无无生日Married是/否100否非空婚否Salary数字(2位小数)8无无工资resume备注简历创建此表的SQL语句如下:CREATTABLEstaff(staffIDTEXT(12)PRIMARYKEY,nameTEXT(8)UNIQUE,birthdateDATE,marriedLOGICALNOTNULL,salaryMONEY,resumeMEMO);2.修改数据表ALTERTABLE表名[ADD列名数据类型[完整性约束][,…]][DROP[[CONSTARINT]约束名]I[COLUMN列名]][,…][ALTER列名数据类型[,…]];3.删除数据表4.索引操作语句7.3SQL语言的数据查询1.Select语句格式:SELECT[ALLIDISTINCT]