考完三级瞬间轻松,做题时记的知识点,(乱序版,懒得整理了,主要用于选择和填空)
dbo:database owner(数据库的创建者,创建该对象的用户.)
guest:顾客(能够访问数据库中对象的数据,要求dbo分配权限给guest,一般给他查看的权限select,它没有对应的登录账户名)
数据库应用系统设计每个步骤都按照数据组织与存储、数据访问与处理、应用设计等几个方面进行。数据库概念设计自下而上ER设计。
数据库应用系统日常维护工作一般包括数据库的备份、锁管理、日志的维护等。
数据库维护:1.数据库的转储和恢复2.数据库安全性、完整性控制;3.数据库性能功能的检测和改善;4.数据库的重组和重构
数据库的重构应尽量避免应用程序的改动,部分修改内模式和外模式。
数据库恢复顺序:1.最近完全数据库备份2.完全备份后的最近差异数据库备份3.完全备份和差异之后的所有日志备份。
数据恢复三种模式:1)简单恢复模式(只用于测试和开发数据库,或用于主要包含只读数据的数据库,如数据仓库)。2)大容量日志恢复模式:一般只作为完整性恢复模式的附加模式,不支持点恢复。3)完整恢复模式
数据库性能优化:
1.数据库运行环境与参数调整:外部调整(CPU、网络、调整内存分配、调整磁盘I/O):增加CPU数量或终止需要许多资源的进程。令I/0时间最小化,减少磁盘上文件竞争带来的瓶颈。
2.模式调整与优化。
反规范化(增加派生冗余列,增加冗余列,重新组表、分割表和新增汇总表)破坏数据完整性。
3.存储优化:1)索引视图。2)聚集。
4.查询优化。1)合理使用索引。2)避免和简化排序。3)消除大型表数据的顺序存储。4)避免复杂正则表达式。5)使用临时表加速查询。6)不随意使用游标。7)事务处理
数据库应用系统从功能角度分为四个层次:1,表现层2.业务逻辑层(将表现层获取的数据进行组织传递给数据访问层)3.数据访问层(负责与DBMS系统实现交互)4.数据持久层(负责保存和管理应用系统)
分布式数据库中,导致数据传输量大的主要原因是数据间的连接操作和并操作。
数据库模式定义语言DDL是用于描述数据库中要存储的现实世界实体的语言。
聚集索引:索引文件按其索引列列值指定的顺序与数据文件中的数据记录的排列顺序相一致。
索引视图只能引用同一数据库中同一所有者的对象。
SOL Server 2008 支持三种用户自定义函数:标量函数、内嵌表值函数和多语句表值函数。标量函数可以出现在SELECT语句目标列中,其他两个函数必须放在SELECT和FROM子句中。
INSTEAD OF创建前触发器,FOR或AFTER创建后触发器。
一个表上可以建立多个后触发器,但只能建立一个前触发器。
声明游标语句:DECLARE x CURSOR FOR SELECT.......
用户数据库文件扩展名为MDF
分布式数据库分片类型:水平分片、垂直分片、导出分片、混合分片。
分布式数据库最基本特征是本地自治、非集中管理以及高可用性。
分布式数据库系统中的分布透明性是位置独立性、数据分片独立性和数据复制独立性。
分布透明性包括分片透明性、位置透明性、局部数据模型透明性。分布式数据库的分片透明性是最高级别的透明性,位于全局概念与分片模式之间。位置透明性是下一层次,指用户只需了解数据分片情况,不需要了解场地。局部数据模型透明性用户需要了解场地。
数据处理大致可分为两类:OLTP(联合事务处理)--是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理。OLAP(联合分析处理)--数据仓库的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查找结果。
ROLAP以关系数据库为核心,进行多维数据的表示和存储。
MOLAP基于多维数组的OLAP的实现。
HOLAP是基于混合数据组织的OLAP实现。
default表示如果缺省,默认一个值。
视图的特点:1.简单性。2.安全性3.逻辑独立性
视图的作用:1.简化数据查询语句2.使用户从多角度看待同一数据3.提高数据的安全性4.提供了一定程度的逻辑独立性。
对视图创建唯一聚集索引后,视图的结果集将存储在数据库中。
子查询语句不可使用ORDER BY。
分割表分为水平分割表和垂直分割表。分割表增加了维护数据完整性的代价。水平分割后,查询数据需要使用UNION操作,垂直分割后,查询数据需要JOIN操作。
结构图包括用例图、类图、组件图、对象图和部署图()。
基于C/S数据应用系统体系结构:客户端/服务器端架构,也叫胖客户端架构,客户端需要实现绝大多数的业务逻辑和界面展示,客户端一般需要单独开发。
基于B/S架构,浏览器/服务器架构,瘦客户端。客户端只需安装WEB浏览器即可,且业务规则一般在WEB服务器端实现。
SOL SERVER中的数据库分类:
1.系统数据库:master,model,msdb,tempdb(前三个修改较少,可进行定期备份,tempdb是系统临时文件的数据库,每次启动后会清空,没必要备份)
2.用户数据库。
它的数据库组成:1.数据文件:1).mdf 主数据文件,只有一个,不能小于3MB 2).ndf 次数据文件,有0个或多个
2.日志文件:.ldf 至少有一个
数据库存储最小单位:数据页,1页是8kb的连续磁盘空间。行不能跨页存储。
选择前三:TOP 3 WITH TIES 通常与order by相结合使用。
选择前n%行:TOP n percent;
数据表对某一列数据的唯一性约束有UNIQUE约束和PRIMARY约束。UNIQUE允许出现空值但不允许出现重复值,PRIMARY KEY不允许出现空值和重复值。
SQL数据库服务器角色权限:
bulkadmin:执行BULK INSERT语句。
dbcreator:创建、修改、删除和还原数据库、
diskadmin:管理磁盘文件。
processadmin:管理在SQL SERVER实例中运行的进程。
severadmin:配置服务器范围的设置。
sysadmin:在SQL SERVER中进行任何活动,该角色的权限跨越所有其他固定服务角色。
setupadmin:添加和删除链接服务器。
SQL SERVER固定数据库角色:
db_owner:具有在数据库中进行全部操作的权限。
db_datawriter:具有插入删除和更新权限。
db_datareader:具有查询数据库所有用户数据权限。
db_denydatareader:不具有查询数据库权限。
db_backupoperator:具有备份数据库、备份日志权限。
db_securityadmin:具有管理数据库角色、角色成员以及数据库中的语句和对象的权限。
db_accessadmin:具有添加或删除数据库用户的权限。
数据库管理系统一般通过周期性检查事务等待图来实现死锁检测。(出现回路则发生了死锁)
并发操作带来的数据不一致性包括丢失修改、不可重复读和读脏数据。产生上述三类数据的不一致性主要原因就是并发操作破坏了事务的隔离性,所以数据库管理系统必须提供并发控制机制。
系统故障造成数据库不一致状态,对于故障发生前已提交的事务(既有BEGIN Transaction,而没有commit或rollback)做redo操作,对于故障发生时尚未完成的事务(只有BEGIN Transaction,而没有commit或rollback)做undo操作。
CLUSTERED(clustered)表示聚簇索引。
UNIQUE CLUSTERED:唯一非聚簇索引。
HAVING内可以使用聚合函数,如(sum,min,max,avg,count),WHERE中不可以。
顺序图:横向矩形代表对象,水平消息线用于对象间的通信,虚线称作“生命线”,表示一个对象在其时间周期内的存在。
游标:
在DECLARE中cursor声明游标,创建一个命名的查询语句。
open:打开游标。 fetch:取出游标中的一条记录装入变量。 close:释放游标。
SCROLL关键字指明游标可以在任意方向上滚动,所有fetch选项(first,last,prior,next【当前位置的下一行】,relative n【从当前位置数,第n行】,absolute【从游标的第一行开始数,第n行】,Into)都可以在游标中使用,若忽略该选项,则游标只能向前滚动(next)。
安全性级别:A类:提供验证保护。B类:提供强制保护。C类:提供自主保护。D类:提供最小保护。
UML图:
1)用例图:描述系统与外部系统及用户之间的交互。
2)类图
3)对象图
4)序列图
5)协作图:交互图的一种,其中包含一组对象、对象之间的联系以及对象间发送和接受的消息。
6)状态图:用来描述一个实体在发生一些事件时的状态变化情况。
7)活动图:陈述活动与活动之间的流程控制的转移。
8)构建图
9)部署图:
用户自定义函数包括标量函数和表值函数。
在使用REVOKE命令回收用户权限时,如果要将用户转授给其他用户的权限也一并回收,则命令中需要加上CASCADE选项。对应于GRANT语句中的WITH GRANT OPTION。
定义索引语句:CREATE UNIQUE CLUSTERED INDEX 索引名 ON 视图名。
数据库故障:1.事务内部故障2.系统故障3.介质故障4.计算机病毒。
分布式数据库有局部数据库管理系统、全局数据库管理系统GDBMS、全局数据字典、通信管理四部分组成。
ETL是实现数据集成的主要技术。即填充更新数据仓库的数据抽取、转换、装载的数据采集过程。
DFD的主要组成包括外部实体(外部项)、处理过程、数据存储和数据流。
主文件组是系统定义好的一个文件组,它包含主要数据文件和任何没有明确分配给其他文件组的其他数据文件。
日志文件不包含在文件组里。
三层浏览器/服务器结构的数据库应用系统是由浏览器、应用服务器和数据库服务器三部分组成,触发器是在数据库服务器上执行的。
用例之间的关系包括扩展、使用和组合。
开窗函数公式:函数名 OVER(),OVER关键字表示把函数当成开窗函数而不是聚合函数。聚合开窗函数只能使用PARTITION BY子句或不带任何语句。ORDER BY不能与聚合函数一同使用。
并行数据库结构:1)共享内存结构。2)共享磁盘结构。3)无共享结构
数据挖掘的三个阶段:数据准备、数据挖掘、结果的解释和评估。
备份日志语法:BACKUP LOG 数据库名 TO 备份的地方
数据仓库是一个面向主题的、集成的、非易失的,且随时间变化的数据集合。
关联规则的成立一般与支持度和置信度两个指标进行描述。
SQL四个排名函数:
1.rank():返回结果集的分区内每行的排名。
2.dense_rank():返回结果集分区中行的排名。
3.row_number():返回结果集分区内行的序列号。
4.ntile():将有序分区中的行分发到指定数组的组中。
SQL SERVER主要采用发布、分发、订阅的方式来处理复制。复制技术包括快照复制、事务复制和合并复制。
操作题:
创建存储过程:
create procedure 存储名
@参数名 参数类型,@参数名 参数类型 outpout//此为输出函数
as
begin
/*SQL语句*/
end
如:
创建触发器:
create trigger 触发器名
on 操作的表名 for 操作类型/*主要有insert,update,drop*/
as
begin
end
创建分区表步骤:
1)创建分区函数
create partion function 函数名
as range left for(a1,a2,a3)//分区的范围
2)创建分区方案
create partition scheme
as 分区函数名//表示依据分区函数
to(a1,a2,a3,a4)//分组
3)使用分区方案创建表
create table 表名(
各个属性值及类型
)
on 分区方案
创建自定义函数:
create function 函数名
returns 返回值类型/*可以是一个表,类似于结构体*/
/*例:
@表名 table(
各个属性值及类型
)*/
as
begin
end