计算机四级数据库工程师笔记_第1页
计算机四级数据库工程师笔记_第2页
计算机四级数据库工程师笔记_第3页
计算机四级数据库工程师笔记_第4页
计算机四级数据库工程师笔记_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一章 引论1、数据模型:数据结构、数据操作、数据完整性约束2、外模式/模式的映射保持了数据库的逻辑独立性,模式/内模式的映射保持了数据库的物理独立性3、数据库关系系统的功能:数据定义、数据操纵、数据库运行和控制、数据库的建立和维护4、查询处理器包括:DML编译器、嵌入式DML预编译器、DDl编译器、查询和执行引擎5、存储管理器包括:权限和完整性管理器、事务管理器、文件管理器、缓冲区管理器第二章 数据库应用系统生命周期1、软件生命周期:概念阶段、需求阶段、设计阶段、实现阶段、测试阶段、安装部署及交付阶段2、DBAS组成:与数据访问有关的事务模块、与数据访问无直接关联的应用模块3、DBAS系统生

2、命周期:项目规划、需求分析、系统设计、实现与部署、运行管理与维护4、数据字典:数据项、数据结构、数据流、数据存储、处理过程5、需求分析:数据与数据处理需求分析、业务规则需求分析、性能需求分析(数据库操作响应时间、系统吞吐量、允许并发访问的最大用户量、每TPS代价值)、其他需求(存储需求分析、安全性需求分析、备份和恢复需求分析)6、系统设计:概念设计、逻辑设计、物理设计第三章 需求分析及功能建模方法1、需求分析的过程:标识问题、建立需求模型(DFD图和IDEFO图)、需求描述(需求模型和软件需求说明书)、确认需求2、DFD构成:数据流(有名字的箭头)、处理(矩形)、数据存储()、数据源及数据终点

3、(平行四边形)第四章 数据库概念设计及数据建模1、概念设计的依据:需求说明书、功能模型、在需求分析阶段搜集到的各类报表2、概念设计的步骤:确定实体集、确定联系和联系类型、建立有信息模型表示的企业模型、确定实体集属性、对信息模型优化3、数据建模方法:ER方法、IDEF1X方法(数据建模方法)4、ER建模方法:矩形表示实体,菱形表示联系、椭圆表示属性5、IDEF1X建模方法:矩形框表示独立实体集,圆角矩形表示从属实体集第五章 关系数据库逻辑设计1、部分函数依赖:X的真子集能函数决定Y,则称X部分函数决定Y,否则完全函数决定Y2、平凡函数依赖:X函数决定其子集Y,则称X决定Y为平凡函数依赖 平凡函数

4、依赖:右边的属性集是左边属性集的子集时 非平凡函数依赖:右边的属性集中至少有一个属性不属于左边的集合时 完全非平凡函数依赖:右边的属性集中的属性都不在左边的属性集时3、关于范式第一范式:R的每个属性都是不可分的数据项(关系中的元组的每个属性都只能取一个值)第二范式:R的每个非主属性完全函数依赖于码,即不存在非主属性对码的部分函数依赖第三范式:R中不存非主属性对码的传递函数依赖改进的第三范式:R中即不存在部分函数依赖,也不存在传递函数依赖于候选码,即一条记录中每个函数依赖的决定放都是候选关键字第六章 存储技术与数据库物理设计1、数据库物理设计步骤:逻辑模式调整、文件组织与存取设计、数据分布设计、

5、安全模式设计、确定系统配置、物理模式评估2、各种类型的文件适用:堆文件:数据量少,插入、删除、更新操作频繁顺序文件:用户的查询定义在查找码上散列文件:用户的访问顺序是随机的聚集文件:用户查询经常要进行多表连接第七章 数据库应用系统功能设计1、概要设计提供的文件:概要设计说明书、数据库或数据结构设计说明书、组装测试计划等文件2、概要设计侧重于模块的外部功能描述和模块间接口的功能关系,详细设计则是细化概要设计产生的模块的功能,还要制定模块测试方案,其结果是星系设计说明书。3、概要设计的核心是辨识和设计事务自身的事务处理逻辑第八章 关系数据库操作语言SQL1、数据类型数值型:Bigint、int、b

6、it(0或1)字符串型:char(n)-定长字符串型、varchar(n)-可变长字符串型、text文本型日期时间型:datetime货币型:money2、关系表的定义与删除Create table (列级完整性约束定义,表级完整性约束定义参数:null、dufult、unique、check、primary key、foreign key 【Foreign key (列名) references .(外表列名)】Drop table 表名3、修改表结构Alter table 表名 alter column 列名 新数据类型add 列名 数据类型 属性drop column 列名add con

7、straint 约束名 约束定义drop constraint 约束名4、数据操作语言Select .from.where.group by.havingorder by 参数:like 匹配字符:下划线-匹配任意一个字符 百分号-匹配0个或多个字符 -匹配中任意一个字符 -不匹配中任意一个字符 Is null Asc 和DescDistinct -消除重复记录Top n (with ties表示包含并列的结果)Exists 存在(1)case 测试表达式When 简单表达式1 then 结果表达式1 When 简单表达式2 then 结果表达式2 Else 结果表达式 End(2)case

8、When 布尔表达式1 then 结果表达式1 When 布尔表达式2 then 结果表达式2 Else 结果表达式End5、聚合函数不能用在where字句中6、查询连接:union7、由于合函数不能用在where字句中,因此,当一个列的值与聚合函数的值比较时,不许先用子查询得到聚合函数的结果8、带exists 的查询是先执行外层查询,然后再执行内层查询,由外层查询的值决定内层查询的结果,内层查询的执行次数由外层查询结果的数量决定 由于带exists的查询只返回真假值,因此在子查询里不必指定查询列表,所以子查询的目标列通常都用*。常称此种子查询为相关子查询9、数据修改插入数据:insert i

9、nto表名 列名表 values 值列表 insert into表名 列名表 values 子查询语句更新数据:update 表名set 列名=表达式 where 更新条件删除数据:delete from 表名where 删除条件10、索引创建索引:create (unique、clustered、unclustered) index 索引名 on 表名 (列名1 顺序,列名2 顺序) 参数:unique-唯一索引 Clustered-聚集索引 Unclustered-非聚集索引 顺序包括ASC和DESC删除索引:drop index 索引名11、视图创建视图:create view 视图名

10、视图列表名 as select语句 with check option参数:with check option 表示通过视图进行操作数据时要满足定义视图时指定的where字句 注意:创建试图时要么指定全部的列,要么全部都省略,省略后视图的列名与查询语句的列相同,下列情况,不能省略(1)目标列不是单纯的属性,是计算函数或列表达式 (2)多表连接时选了几个同名的列作为视图的字段 (3)需要在视图中为列选择更合适的名字 包含分组信息的视图只能用于查询,不能用于修改数据删除视图:drop view 视图名12、视图的作用简化数据查询语句、使用户能从多角度看待同一数据、提高了数据的安全性、提供了一定程度

11、的逻辑独立性第九章 事务调度与并发控制1、事务的特征原子性(atomicity)、一致性(consistency)、隔离性(isolation)、持久性(durability)2、锁的类型互斥锁(exclusive lock,简称x锁)、共享锁(shared lock,简称s锁)3、三级加锁协议第十章 数据库的运行实施和维护1、数据库的维护工作维护和转储、安全性和完整性控制、性能的检测和改善、重组和重构第十一章 故障管理1、故障类型事务内部故障(预期和非预期的事务内部故障)、系统故障、介质故障、计算机病毒故障第十二章 SQL2000数据库管理系统1、系统数据库Master:记录所有系统级信息M

12、sdb:提供对自动执行任务的支持Model:样板数据库,包含所有用户数据库的公共信息Tempdb:临时数据库2、SQl中数据的存储单位是页,表中的行不能跨页存储,一行数据的大小不能超过一页3、文件主数据文件:mdf文件辅助数据文件:ndf文件日志文件:ldf文件,日志文件最小为512K,但是最好不要小于1M4、创建数据库Create database 数据库名 on (Name=数据库名,Filename=数据库路径及文件名,Size=数据库初始大小,Maxsize=数据库最大大小,Filegrowth=数据文件的增加量, -0表示不自动增长)Log on(Name=日志文件名,Filenam

13、e=日志文件路径及文件名,Size=日志文件初始大小,Maxsize=日志文件最大大小,Filegrowth=日志文件的增加量)5、删除数据库Drop database 数据库名6、T-SQL简介注释:- 单行注释 /*.*/ 为块注释变量:全局变量以开始 局部变量以开始 变量声明:declare 局部变量名 数据类型 变量赋值:set 局部变量名=值或者表达式 Select 局部变量名=值或者表达式流程控制语句:begin。end If 布尔表达式 语句块1 else 语句块2 While 布尔表达式 循环体语句块输出:print 局部变量名/函数名/字符串表达式第十三章 数据库对象1、存储

14、过程的优点:模块化程序设计、提高性能、减少网络流量、可作为安全机制适用2、创建存储过程:Create procedure 存储过程名 参数名 数据类型 =default output as sql语句3、执行存储过程:Exec或者use 存储过程名 实参 output4、注意在执行有输出参数的存储过程时,执行语句变量名后边要加上output修饰符在调用有输出参数的存储过程时,与输出参数对应的是一个变量,此变量用于保存输出参数返回的结果5、更新和删除数据的存储过程更新:删除:6、自定义函数类型:标量函数、内嵌表值函数、多语句表值函数7、标量函数定义标量函数:Create function (拥有

15、者.函数名 参数 as 标量数据类型=default ) Returns 返回值类型 As begin 函数体 return 标量表达式 end例子: 调用标量表达式:Select 拥有者名。标量函数名(标量参数)8、内嵌表值函数创建内嵌表值函数:Create function 拥有者函数名 (参数名 数据类型 default) Returns table Return (select 语句)内嵌表值函数的使用:内嵌表值函数的使用与视图非常类似,需要放在查询语句的from子句中,其作用像是带参数的视图9、多语句表值函数创建:Create function 拥有者函数名 (参数名 数据类型 de

16、fault) Returns 返回变量 table As Begin 函数体 return End多语句表值函数调用:其返回的是一个表,因此也是放在select语句的from语句中10、触发器作用:完成比check约束更复杂的数据约束、为保证数据库性能而维护的非规范化数据、实现复杂的业务规则11、创建触发器Create trigger 触发器名称 On 表名or视图名 With encryption For|after|instead of As If update (column)Sql 语句注意:可以在一个表上创建多个后触发型触发器,只能建立一个前触发型触发器 所有的建立和修改数据库及数据

17、库对象的语句及所有的drop语句都不能用在触发器中,通常不需要再触发器中返回任何结果后触发型触发器例子:前触发型触发器例子:12、触发器中的两个临时表Deleted表中存放delete和update语句所影响行的复本,其和执行操作的表没有相同的行Inserted表中存放insert和update语句所影响行的副本,其是执行操作的表中新数据的副本13、修改数据库队形用alter,删除数据库对象用drop第十四章 安全管理1、数据库用户种类:数据库系统管理员、数据库对象拥有者、普通用户2、建立以SQL server 登陆的用户:Sp_addlogin 登陆账户名,密码,数据库 建立以windows

18、身份登陆的账户Sp_grantlogin windows用户组或用户名3、删除以SQL server 登陆的用户Sp_droplogin 用户名删除以windows身份登陆的账户Sp_revokelogin 用户名4、建立数据库用户Sp_adduser 登录账户名,新数据库用户名,角色名 删除数据库用户Sp_dropuser 用户名5、权限管理授权语句:Grant 对象权限名 on 表名 to 数据库用户名收回权限语句:Revoke 对象权限名 on 表名 from 数据库用户名拒绝权限语句:Deny 对象权限名 on 表名 to 数据库用户名6、添加固定的服务器角色Sp_addsrvrole

19、member 固定服务器角色登录名 ,固定服务器角色名称7、将用户添加到数据库角色中Sp_addrolemember 数据库中角色的名称,添加到角色中的用户名8建立用户自定义角色Sp_addrole 新角色名称,新角色拥有者第十五章 备份和恢复数据库1、数据库备份文件扩展名为bdk2、使用存储过程创建备份设备Sp_umpdevice 备份设备类型(disk、pipe、tape),备份设备的逻辑名称,备份设备物理名称3、备份类型:完全备份、差异备份、事务日志备份要进行事务日志备份时,必须预先将数据库的故障还原模型设置为“完全”或“大容量日志记录”模式,“简单”还原模型不能进行日志备份,而且对数据

20、还原模型的设置必须在完全备份或差异备份之前4、可以再一个备份设备上对同一个数据库进行多次备份,也可以在一个备份设备上对多个数据库进行多次备份;可以将一个数据库备份到多个设备上5、使用T-SQL备份数据库Backup database 数据库名 to 备份设备名 | disk=物理备份文件名with differential | init notinitdifferential 表示进行差异备份init表示重写备份设备,notinit表示追加到备份设备上6、备份日志文件Backup log 数据库名 To 备份设备名|disk=物理备份文件名With init or notinit No_log

21、 | truncate_only-表示备份完后要截断不活动的日志 On_truncate -表示备份完日志后不截断日志7、当一个备份设备作为备份媒体集中的一个成员时,这个设备就只能在备份媒体集中使用,不能单据使用8、恢复数据库Restore database 数据库名 From 备份设备号 Wihtfile=文件号 norecovery | recoveryNorecovery -表示对数据库的恢复还没有完成,使用此选项恢复的数据库是不可用的,但可以恢复后续的备份Recovery -表示对数据库的恢复已经完成9、恢复日志文件Restore log 数据库名 From 备份设备号 Wihtfil

22、e=文件号 norecovery | recovery第十六章 VB开发环境和数据接口1、VB工作模式设计模式:可进行界面和代码的编写运行模式:不可编写代码合界面中断模式:不可编写代码,可编辑界面2、常用的数据绑定控件Textbox、checkbox、listbox、combox 外部绑定控件(activex控件)Datacombo、datalist、datagrid、MSHFgrid3、datagrid主要属性Allowaddnew:允许添加新纪录Allowdelete:允许删除Allowupdate:允许更新记录Columnheaders:决定是否显示字段名Enable:决定运行时能够操作

23、datagrid控件4、datalist和datacomboDatasource:指定ADO数据控件的名称Boundcolumn:指定datasource和rowsource数据源中有关联关系的字段名称Rowsource:该控件提供值的列表Datafield:自定datasource中数据源中的字段名称Listfield:指定来自rowsource数据源且显示在datalist列表中的字段名称第十七章 VB应用编程1、ADO数据控件的主要属性Connectinstring:用于建立与数据源的连接Commandtype:adcmdunknow-命令类型未知 Adcmdtable-表示record

24、source属性的内容是一个表格,其结果是对表执行无条件查询 Adcmdtext-表示recordsource属性的内容是一个查询语句文本块 Adcmdstoreproc:-表示recordsource属性的内容是一个存储过程名Recordsource:设置ADO结果集的内容Recordset:用于存放从数据提供者那里得到的数据,对recordsource执行的结果就放在其中2、ADO数据控件的主要方法ADO数据控件.refresh3、Recordset的主要属性BOF:结果集中记录当前行的指针是否移动到了第一条记录的前边EOF:结果集中记录当前行的指针是否移动到了最后一条记录的后边Recor

25、dcount:存放结果集中记录的个数Sort:将结果集按某个字段排序Absoluteposition:记录当前记录在结果集中的顺序号Bookmark:当前行记录的标识号Fields:结果集中的字段集合 F:字段名称 Fields.value:字段值 Fields.ordinalposition:字段在fields集合中顺序 Fields.type:字段数据类型 Fields.size:字段最大字节数 Fields.sourcetabel:字段来自的表 Fields.sourcefield:字段来自的表中的列4、Recordset的主要方法Move方法:move、movefi

26、rst、moveprevious、movenext、movelastAddnew方法Update方法Delete方法Cancelupdate方法Find方法:ADO控件名.recordset.find(查找条件表达式)OpenClose5、connection对象主要属性Connectionstring:用于指定连接到数据源的名称,建立好连接后不可修改Provider:连接中使用OLE DB提供者Connectiontimeout:执行open方法之后等待的秒数,默认15秒State;表示connection对象是打开还是关闭 Adstateclosed:关闭 Adstateopen:打开 A

27、dstateconnection:正在连接 Adstateexcuting:正在执行 Asstatefetching:正在读取recordset对象的记录6、connection对象的主要方法Open:打开带有数据源的连接Close:关闭带有数据源的连接Execute:在没有创佳简command对象的前提下执行连接中的一个命令7、command对象的主要属性Activeconnection:指定当前使用的连接Commandtext:命令的文本表达(SQL语句、存储过程名或表名)Commandtype:指定要执行的命令的类型 Cmdtext:内容是一个文本,即SQL语句 Adcmdtabel:内

28、容是个表Adcmdstoredproc:内容是个存储过程Adcmdunkonwn:类型未知8、command对象的主要方法Execute:执行9、field对象的主要属性Actualsize:字段中实际存储的字段尺寸Definedsize:字段能存储的最大数据量Name:字段名称Numericscale:十进制小数点右边的位数Precision:十进制小数的精度Type:描述字段的数据类型的常量Value:字段中存储的数据10、parameter对象的主要属性Direction:表示一个参数是输入还是输出参数Name:参数的名称Properties:描述这个参数的property对象的集合Type:参数地的数据类型Value:参数的当前值11、error对象的主要属性Description:错误信

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论