(无忧题库)数据库三级笔记

数据库三级笔记 选择题

数据库分析与设计

DBAS实现与部署包括以下工作内容:

(1)建立数据库结构。
(2)数据加载。
(3)事务和应用程序的编码及测试。
(4)系统集成、测试及运行
(5)系统部署。

在IDEF0需求建模方法中,每个功能活动可以用带箭头的矩形框表示:

左边的输入箭头表示完成活动需要的数据;(输入)

矩形框上方的控制箭头描述了影响这个活动执行的事件或约束条件;(控制)

右边的输出箭头说明由活动产生的结果及信息;(输出)

下方进入的机制箭头表示实施该活动的物理手段或完成活动需要的资源(机制)

从功能角度DBAS系统通常可以划分为四个层次实现:

表示层:负责所有与用户交互的功能,用户对数据库应用系统的最直观感受均在这层实现。
业务逻辑层:负责根据业务逻辑需要将表示层获取的数据进行组织后,传递给数据访问层,或将数据访问层获取的数据进行相应的加工处理后,传送给表示层用于展示。
数据访问层:负责与DBMS系统进行交互,提取或存入应用系统所需的数据。
数据持久层:负责保存和管理应用应用系统数据。

DBAS的实施阶段主要包括以下工作:

(1)创建数据库。
(2)装载数据。
(3)编写与调试应用程序。
(4)数据库试运行。

物理设计

数据库事务详细设计是根据事务概要设计得到的事务流程,采用高级语言或DBMS提供的事务实现机制,设计数据库事务,即数据库事务的相关设计是在数据库事务详细设计(属于物理设计阶段)进行的。

ER建模方法

关系模式个数=实体集数+多对多关系数

业务逻辑层概要设计

​ 1、一个构件或模块只负责完成一项任务,也就是单一责任原则。
​ 2、各个构件均应具有独立的功能,并最大限度地减少与其他构件功能重叠。
​ 3、构件之间的接口应尽量简单明确。
​ 4、如果两个构件间的关系比较复杂,应考虑进一步进行模块划分。
​ 5、如果构件过于复杂,可以考虑将其细分。
​ 该阶段的工作是将构件或模块细化,而不是越弄越复杂。关系复杂的构件合并之后会更复杂

系统规划与分析

系统规划与定义的内容包括 任务陈述、确定任务目标、确定系统范围和边界、确定用户视图;

可行性分析阶段的任务包括技术可行性、经济可行性、操作可行性、开发方案选择。

IDEFIX中,从属实体集

在IDEF1X中,如果实体集的一个实例的唯一标识依赖于该实体集与其他实体集的联系,那么它就是从属标识符实体集或简称为从属实体集。 是标定型联系

如果子女实体集中的每一个实例都能被唯一的确认而无需了解与之相联系的双亲实体集的实例,该联系就被称为"非标定型联系"。

DBAS的性能指标

DBAS的性能指标主要包括:数据操作响应时间、系统吞吐量、允许并发访问的最大用户数、每TPS代价值。

数据库物理设计内容包括

数据库物理设计内容包括:数据库逻辑模式描述、文件组织与存取设计、数据分布设计、确定系统配置、物理模式评估。

DFD的组成

DFD方法由四种基本元素组成:数据流、处理、数据存储和外部项。

数据安全设计

数据安全设计主要有五个方面:安全性保护(防止非法用户对数据库非法的使用,其中一种主要方式即是用户权限设计)、完整性保护、并发控制、数据库的备份与恢复、数据加密传输。

完整性约束条件

完整性约束条件的作用对象分为列、元组和关系三种级别。
1、对列的约束主要指对其值类型、范围、精度、排序等的约束条件。
2、对元组的约束主要指对记录中各个属性之间的联系的约束条件。
3、对关系的约束是指对若干记录间、关系集合上以及关系之间联系的约束条件。


用例模型的构成元素

由角色,用例,系统三部分组成

用例用于描述从系统用户的角度来观察,系统应该具有哪些功能,帮助分析人员理解系统的行为。
角色是与系统进行交互的外部实体,可以是系统用户也可以是其他系统或者硬件设备。
系统是在边界线以内的区域(即用例的活动区域)抽象地表示能够实现的所有基本功能。
一个角色可以执行多个用例,反过来,一个用例也可以被多个角色使用。

数据库及数据库对象

架构(Schema)或者叫模式

架构(Schema,也称为模式)是数据库下的一个逻辑命名空间,可以存放表、视图等数据库对象。一个数据库可以包含一个或多个架构,架构由特定的授权用户所拥有;在同一个数据库中,架构名必须唯一;架构名可以是显示的,也可以由DBMS提供默认名

因此用户在使用表时不需要显式指明表所属的架构

创建分区函数的SQL语句是:

CREATE PARTITION FUNCTION PFl(int) AS RANGE LEFT(RIGHT) FOR VALUES (……n)
其中……n用于指定分区的值的数目,所创建的分区数等于n+1。本题中n值分别为1、100、200,因此可以创建4个分区。由于釆用了LEFT关键字,在指定分区间隔值是由数据库引擎按升序从左到右排列时,指定边界值间隔处于左侧分区;而关键字RIGHT是指定边界值间隔在右侧分区。题目中边界值间隔在左侧分区。

创建分区表步骤

创建分区表通过以下几个步骤实现:
(1)创建分区函数。创建分区函数的目的是告诉数据库管理系统以什么方式对表进行分区。
(2)创建分区方案。分区方案的作用是将分区函数生成的分区映射到文件组中。
(3)使用分区方案创建表。
水平划分将一张基本表划分为多张具有相同属性、结构完全相同的子表。垂直划分则是将一张基本表划分为多张子表,每张子表包含的属性是原基本表的子集。

​ 分区表是将表中的数据按水平方式划分成不同的子集,这些数据子集存储在数据库的一个或多个文件组中。
​ 分区表是从物理上将一个大表分成几个小表,但从逻辑上来看还是一个大表。对于用户而言,所面对的仍然是一个大表,用户只要对大表进行操作就可以了,数据库管理系统会自动对小表进行操作

索引

聚集索引键值的逻辑顺序决定表中对应行的物理顺序。一个表或视图只允许同时有一个聚集索引。

聚集索引和非聚集索引的创建与顺序无关,

SQL Server数据库组成

​ SQL Server将数据库映射为一组操作系统文件,分为数据文件和日志文件。

​ 其中:数据文件分为主要数据文件(每个数据库有且只有一个)、次要数据文件(可无可有,个数无限制)。
​ 每个数据库必须至少有一个事务日志文件,也可以有多个事务日志文件。


​ SQL Server有两种类型的文件组:主文件组(包含主要数据文件和任何没有明确分配给其他文件组的其他数据文件)和用户定义的文件组(用户可以创建自己的文件组,以将数据文件组织起来,便于管理和数据分配)。
说明:
​ 1)日志文件不包括在文件组内。
​ 2)一个文件不能属于多个文件组
​ 3)如果文件组中有多个文件,则它们在所有文件被填满前不会自动增长,而填满后这些文件会循环增长。

安全管理

数据库角色

​ 角色是一组具有相同权限的用户集合。用户定义的角色属于数据库一级的角色,用户定义的角色的成员可以是数据库的用户,也可以是用户定义的角色。只要权限没有被拒绝过,则角色中成员的权限就是其所在角色的权限加上他们自己所具有的权限

安全控制机制

​ Oracle的安全控制机制可分为数据库级的安全控制、表级、行级和列级的安全控制。

​ 数据库级的安全性通过用户身份认证和授予用户相应系统权限来保证,而表级、行级、列级的安全性是通过授予或回收对象特权保证的。

​ Oracle数据库中的用户按其操作权限大小可分DBA用户和普通用户

身份验证模式

​ SQL Server 2008的身份验证模式有"Windows身份验证模式"和"混合身份验证模式"两种。混合身份验证模式是指SQL Server允许Windows授权用户和SQL授权用户登录到SQL Server数据库服务器。

​ 当登录账户成为数据库中的合法用户之后,该账户除了具有一些系统视图的查询权限之外,并不对数据库中的用户数据和对象具有任何操作权限,因此,下一步就需要为数据库中的用户授予数据库数据及对象的操作权限,

db_datereader角色

​ 该角色是固定数据库角色,是定义在数据库级别上的,而且存在于每个数据库中。用户不能添加、删除或更改固定数据库角色 db_datereader。具有查询数据库中所有用户数据的权限

db_datawriter角色

​ db_datawriter是固定数据库角色之一,具有插入、删除和更改数据库中所有用户数据的权限。

sa系统管理员角色

系统管理员在数据库服务器上具有全部的权限。每个数据库管理系统在安装好之后都有自己默认的系统管理员,SQL Server 2008默认的系统管理员是“sa”。在安装好之后也可以授予其他用户具有系统管理员的权限。

运行维护与优化

数据库重构和重组

​ 数据库重组是指按照系统设计要求对数据库存储空间进行全面调整,如调整磁盘分区方法和存储空间、重新安排数据的存储、整理回收碎块等,以提高数据库性能。
​ 数据库的重构是指由于数据库应用环境的不断变化,增加了新的应用或新的实体,取消了某些应用,有的实体与实体间的联系也发生了变化等,使得原有的数据库设计不能满足新的需求,此时需要调整数据库的模式和内模式。
​ 数据库的重组并不修改数据库原有设计的逻辑结构和物理结构,而数据库的重构则不同,它可以部分修改数据库的模式和内模式。

数据库监控分析

​ 根据监控分析实现的方法不同,监控分析机制分为两种,一种是由数据库系统建立的自动监控机制,另一种是由管理员手动实施的监控机制。

​ 根据监控对象的不同,监控分析可以分为两种:
(1)对数据库架构体系的监控
​ 主要监控内容:空间基本信息、空间使用率与剩余空间大小、空间是否具有自动扩展的能力、哪些表的扩展将引起空间的扩展,以及段的占用空间与区间数等。
(2)对数据库性能的监控
​ 主要监控内容:数据缓冲区的命中率、库缓冲、用户锁、锁与等待、回滚段、临时段使用情况、索引的使用情况、等待事件和共享池等。
用户登录次数及执行的语句不属于监控内容

数据库运行维护

​ 数据库运行维护工作主要包括数据库的转储和恢复;数据库的安全性和完整性控制;数据库性能的监控分析和改进;数据库的重组和重构。其中新建数据库用户属于数据库的安全性和完整性控制的一项功能。

索引的使用

索引的使用要恰到好处,其使用原则一般如下:
①经常在查询中作为条件被使用的列,应为其建立索引。
②频繁进行排序或分组的列,应为其建立索引。
③一个列的值域很大时,应为其建立索引。
④如果待排序的列有多个,应在这些列上建立复合索引。
⑤可以使用系统工具来检查索引的完整性,必要时进行修复。另外,当数据库表更新大量数据后,删除并重建索引也可以提高查询速度

分割表

​ 水平分割是对一张表在水平方向分割,分割后得到的表结构相同,查询时需要使用UNION运算;垂直分割则是对一张表在垂直方向分隔,分割后每张表中除主码列外,其他列均不同,查询时需要使用JOIN运算。
​ 分割的目的是提高性能。

故障管理,备份和恢复

DBMS中常见的四类故障

事务内部故障

预期的事务内部故障
解决方法: 事务回滚
非预期的事务内部故障
事务故障的恢复由系统自动完成

系统故障

又称软故障
解决方法:重启后undo(撤销)所有未提交的事务;redo(重做)所有已提交的事务

介质故障

又称硬故障
容错策略:软件容错和硬件容错

计算机病毒故障

解决方法:防火墙,杀毒软件,数据库备份文件
数据库备份设备

​ 数据库备份设备可以是磁带也可以是磁盘,数据库备份设备可以为本地设备,也可以使用远程网络设备。

​ SQL Server支持两种备份方式,一种是先建立备份设备,然后再将数据库备份到备份设备上,这样的备份设备称为永久备份设备;另一种是直接将数据库备份到物理文件上,这样的备份设备称为临时备份设备。

​ 创建备份设备的 T-SQL存储过程为sp_addumpdevice。

事务日志备份

​ 事务日志备份仅用于完整恢复模式和大容量日志恢复模式,它并不备份数据库本身,只备份日志记录,而且只备份从上次备份之后到当前备份时间发生变化的日志内容。但是不允许对大容量操作日志备份进行时点恢复。

​ 结尾日志备份在出现故障时进行,用于防止丢失数据,可以包含纯日志记录或者大容量操作日志记录

数据转储/数据备份

​ 静态转储保证了数据的有效性,却是以降低数据库的可用性为代价的;而动态转储虽然提高了数据库的可用性,但数据的有效性却可能得不到保证。

为了保证数据的一致性,需使用日志文件和动态转储结合使用。在制定备份策略时,需要考虑备份空间、时间等因素。

​ 为了既能保证数据的有效性又不会降低数据库的可用性,需要引入日志文件,用它记录转储期间各事务对数据库的修改活动记录,然后使用动态转储的备份副本加上日志文件就可以将数据库恢复到某一时刻的正确状态。

完全转储是对数据库中所有数据进行转储,需占用较多的时间和空间。转储速度并不快

差量转储是对最近一次数据库完全转储以来发生的数据库变化进行转储。差量转储和完全转储相比速度快,占用空间小;差量转储和增量转储相比速度慢、占用空间多,但是恢复速度快。

增量转储只复制上次转储后发生变化的文件或数据块。增量转储所需的时间和空间都比较短,但增量转储数据只能和完全转储配合,才能对数据库进行恢复。增量转储的恢复时间比完全转储要长。

转储速度:增量转储>差量转储>完全转储

存储空间占用:完全转储>差量转储>增量转储

恢复时间:增量转储>完全转储 增量转储>差量转储

数据库恢复模式

​ 通常,对于用户数据库,简单恢复模式只用于测试和开发数据库,或用于主要包含只读数据的数据库(如数据仓库),这种模式并不适合生产系统,因为对生产系统而言,丢失最新的更改是无法接受的。

​ 可以使用alter database语句对数据库恢复模式进行修改

数据库备份内容、备份时间

​ 在SQL Server 2008系统数据库中,只有tempdb数据库不需要备份,其他的都需要备份。tempdb只是一个临时数据库,每次SQL Server启动时都会重新新建tempdb数据库。

​ 对于SQL Server的系统数据库(不包括tempdb数据),一般是在进行了修改之后立即做备份比较合适。比如对master数据库的备份,通常在执行了创建、修改或删除数据库的操作,或是更改了服务器或数据库的配置、建立或更改登录账户等操作后,都应对它进行备份。
​ 对用户数据库应该采用周期性的备份方法,至于多长时间备份一次,与数据的更改频率和用户能够允许的数据丢失多少有关。但在进行了下列操作后,最好能立刻对用户数据库进行备份:
​ (1)创建数据库之后,或者在数据库中批量加载了数据之后。
​ (2)创建索引之后。
​ (3)执行了清理事务日志的操作之后。
​ (4)执行了大容量数据操作之后。

事务日志备份

​ 事务日志备份并不备份数据库本身,它只备份日志记录,而且只备份从上次备份之后到当前备份时间发生变化的日志内容

大规模数据库架构

XML 数据库

与传统数据库相比,XML数据库具有以下优势:
(1)XML数据库能够对半结构化数据进行有效的存取和管理。如网页内容就是一种半结构化数据,而传统的关系数据库对于类似网页内容这类半结构化数据无法进行有效的管理。
(2)提供对标签和路径的操作。传统数据库语言允许对数据元素的值进行操作,但不能对元素名称进行操作,半结构化数据库提供了对标签名称的操作,包括对路径的操作。
(3)当数据本身具有层次特征时,由于XML数据格式能够清晰表达数据的层次特征,因此XML数据库便于对层次化的数据进行操作。XML数据库适合管理复杂数据结构的数据集。
现阶段在现实环境中,一边使用的是原有的关系数据库厂商在其传统商业产品中进行了相关的扩充,使其能够处理XML数据的产品。

数据分片

数据分片有四种基本方法:
(1)水平分片是在关系中从行的角度(元组)依据一定条件划分为不同的片断,关系中的每一行必须至少属于一个片断,以便在需要时可以重构关系。
(2)垂直分片是在关系中从列的角度(属性)依据一定条件分为不同的片断,各片断中应该包含关系的主码属性,以便通过连接方法恢复关系。
(3)导出分片是导出水平分片,分片的依据不是本关系属性的条件,而是其他关系属性的条件。
(4)混合分片指以上三种方法的混合。

云数据库BigTable数据模型

​ BigTable表的索引是行关键字、列关键字和时间戳,每个单元由行关键字、列关键字和时间戳共同定位。
​ 在BigTable中,不仅可以随意地增减行的数量,同在一定的约束条件下,还可以对列的数量进行扩展。
​ BigTable数据模型的特点是:
​ (1)表中的行关键字可以是任意的字符串。
​ (2)列族是由列关键字组成的集合,是访问控制的基本单位。
​ (3)时间戳记录了BigTable中每一个数据项所包含的不同版本的数据的时间标识。

数据库分布透明性

分片透明性是指数据分片是用户无需考虑的,完全透明的,在编写程序时用户只需要对全局关系进行操作,是最高级别的透明性

位置透明性是指数据分片的分配位置对用户是透明的,用户编写程序时只需要考虑数据分片情况;

局部数据模型透明性,使用户在编写程序时不但要了解全局数据的分片情况,还要了解各片断的副本复制情况及各片断和它们副本的场地位置分配情况。

所以三种级别从高到低的排序是:分片透明性、位置透明性、局部透明性。

分布式数据库最基本特征

​ 本地自治、非集中式管理以及高可用性是分布式数据库最基本的特征。

数据划分

轮转法保证了元组在多个磁盘上平均分配,最适合扫描整个关系的应用,负载均衡,并行性好,但是点查询和范围查询效率很低
散列划分使用散列函数,根据一个或多个属性进行散列**,适合点查询,对于顺序扫描也非常高效**,但是对散列函数的优劣依赖很大。
范围划分有利于范围查询以及点查询,但是也可能引起数据分布不均匀,导致并行处理能力下降。

数据仓库与数据挖掘

快照

​ 快照是关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。它反映的是某个时间点内的数据,该数据具有不可以改变性。而商场商品销售表、电信公司通话详单属于动态数据,不适合用快照的方式获取数据

​ 快照适合数据更新变化量少的数据

元数据

元数据是关于数据的数据,或者叫做描述数据的数据,它描述了数据的结构、内容、链和索引等项的内容。

数据仓库的数据特征

数据仓库中数据特征包括面向主题性,集成性,不可更新性,时间特性。

其中不可更新并不意味着不再向数据仓库追加新的数据,只是一般不对数据仓库内的原始数据进行修改,数据的载入和更新通常是以批量方式进行操作。
时间特性是指随着时间的推移,部分数据不再需要,将会被删除,但不是像操作型数据库那样直接删除。

数据仓库四个特点:
1、主题性:从实际需求出发,具有较高的抽象性,数据可用性比OLTP较为宽松。
2、集成性:需要将数据抽取、转换、清理、装载。
3、稳定性:是面向决策支持应用主题的,数据进入数据仓库后不允许修改。
4、动态性:数据需要定期更新。

分类算法

分类器的构造方法有统计方法、机器学习方法、神经网络方法等。

统计方法包括贝叶斯法和非参数法;

机器学习方法包括决策树法和规则归纳法;

神经网络方法主要是BP算法。

数据库三级填空题

数据仓库与数据挖掘

  • 操作型数据存储ODS主要包括即时OLAP和全局型OLTP应用。
  • 关联规则挖掘中,需要给定两个阈值:最小支持度和最小可信(置信)度。
  • ETL(Extract Transfrom Load)是实现数据集成的主要技术,即填充更新数据仓库的数据抽取、转换、装载的数据采集过程。三个字母的含义分别是:抽取、转换、装载。
  • 时间序列分析也可称为数据演变分析,它能描述行为随时间变化的对象的规律或趋势,并对其进行建模。
  • 封锁粒度越大,数据库系统能够封锁的数据单元就越少,封锁开销也就越小,并发度也就随之降低
  • 元数据(Meta Date)是数据仓库中的重要数据,是关于数据的数据,或者叫做描述数据的数据
  • 在数据仓库中,元数据一般分成技术元数据和业务元数据。
  • 在数据仓库的导出数据或物化视图(实视图)的维护策略中,只在用户查询时发现数据已经过期才进行更新的策略称为延时维护策略。
  • 对一个数据集的数据进行分组,使得每一组内的数据尽可能相似而不同组间的数据尽可能的不同,这样的数据挖掘方法称为聚类算法
  • 数据仓库是一个面向主题的、集成的、非易失的,且随时间变化的数据集合
  • 在机器学习中,一般需要将样本分成独立的三部分:训练集、测试集和验证集三类。
  • 在数据仓库环境中,粒度是一个重要的设计问题,它影响到数据仓库的数据量以及系统能回答的查询的类型。显然,粒度越小,细节程度越高,能回答的查询就越多。
  • 数据库镜像分为高可用,高保护,高性能三种操作模式。
  • 钻取与卷起是OLAP分析的两个基本操作。钻取是指对应某一维逐步向更细节层方向观察数据,卷起则反之
  • 在数据仓库中,根据数据源的变化量在维护对象原有数据的基础上对数据进行维护的方法称为增量维护法。
  • 时间序列分析也可称为数据演变分析,它能描述行为随时间变化的对象的规律或趋势,并对其进行建模。

大规模数据库架构

  • 两阶段的提交协议将场地的事务管理器分为协调者和参与者,通过协调者在第一阶段询问所有参与者事务是否可以提交,参与者做出应答,在第二阶段协调者根据参与者的回答决定事务是否提交
  • 水平分片是在关系中从行的角度(元组)依据一定条件划分为不同的片段,而垂直分片是在关系中以列的角度(属性)依据一定条件划分为不同的片段。
  • 分布式数据库中,位置独立性、数据分片独立性和数据复制独立性形成了分布式数据库系统中的分布透明性,使用户完全感觉不到数据库是分布的,与使用集中式数据库完全一样。
  • 层次结构综合了共享内存、共享磁盘和无共享结构的特点,从全局角度来考虑,可以分为两层,顶层是由若干节点组成的无共享结构,底层是共享内存或共享磁盘结构
  • 在分布式数据库系统中一个全局事务的完成需要多个场地共同参与,为了保持事务的原子性,参与事务执行的所有场地或者全部提交,或者全部撤消(回滚)
  • 并行数据库有四种结构:
    1、共享内存结构:通过互联网共享一个公共的主存储器,与单机系统的区别是以多个处理器代替单个处理器。
    2、共享磁盘结构:所有处理机拥有独立的主存储器,通过互联网共享磁盘。
    3、无共享结构:每个处理机拥有独立的主存储器和磁盘,不共享任何资源。
    4、层次结构:前三种的结合,分两层,顶层无共享结构,底层共享内存或共享磁盘。
    主存储器就是内存。
  • 云计算通过集中所有的计算资源,采用硬件虚拟化技术,为云计算使用者提供强大的计算能力、存储和带宽等资源。
  • 分布式数据库是物理上分散、逻辑上集中的数据库系统。
  • 分布式数据库的查询中,导致数据传输量大的主要原因是数据间的连接操作和并操作,因此有必要对这两种操作进行优化。

故障管理,备份与恢复

  • 在备份语句(BACKUP)中默认情况下使用完整数据库备份,而关键字DIFFERENTIAL专门改变备份为差异备份。
  • 检查点技术的最大特点是最大限度地减少了数据库完成恢复时所必须执行的日志部分。
  • sqlServer2008中有三种事务日志备份,对可能损坏的数据库进行日志备份的方式是**结尾(尾部)**备份
  • 事务内部故障可以分为预期的和非预期的,其中大部分的故障都是非预期的,预期的事务内部故障是指可以通过事务程序本身发现的事务内部故障;非预期的事务内部故障是不能由事务程序处理的,如运算溢出故障、并发事务死锁故障、违反了某些完整性限制而导致的故障等。
  • 数据库镜像有三种实现方式:高可用性、高保护、高性能。

安全管理

  • 在SQL Server 2008中,系统管理员角色是sysadmin
  • 删除数据库用户的T-SQL语句为DROP USER,其语法格式为:
    DROP USER user_name
  • 删除登录帐户的T-SQL语句为DROP LOGIN,其语法格式为:
    DROP LOGIN login_name
  • 创建登录账户的语法是create login 用户名 with password=密码
  • 身份验证模式分为windows身份验证模式和混合身份验证模式。

高级查询

  • 关键字UNIQUE是用来注明该索引是唯一索引,关键字NONCLUSTERED是用来注明该索引是非聚集索引,关键字CLUSTERED是用来注明该索引是聚集索引。

  • 创建索引的语法格式为:

    CREATE [UNIQUE][CLUSTERED|NONCLUSTERED] INDEX index_name
    ON <object>(column [ASC|DESC][,…n])
    
  • 定义架构,命令词为create schema

  • SELECT INTO语句表示从一个表中选取数据,然后把该数据插入到另一个表中。该语句结构通常用于创建表的备份复件或者用于对记录进行存档。该语句使用时要求目标表不存在,因为在插入时会自动创建。

  • 对于已经存在的表,一般使用INSERT INTO语句插入数据,通常有两种方式,一种是插入一个元组,另一种是插入查询结果。

  • SELECT基本语法格式是
    SELECT查询内容
    FROM表名
    WHERE 条件表达式
    GROUP BY 待分组的列名
    HAVING 列名
    ORDER BY 待排序的列名

  • SQL Server提供了四个排名函数**:RANK、DENSE_RANK、NTILE和ROW_NUMBER**,其中**RANK()**函数返回结果集中每个分区内行的序列号,每个分区的第一行从1开始。函数返回结果集中每行数据在每个分区内的排名,并且每个分区内的排名从1开始,但排名中间数值可能有间断

  • DENSE_RANK()函数与RANK()函数的作用基本一样,使用方法也一样,唯一的区别是DENSE_RANK()的函数排名中间没有任何间断,即该函数返回的是一个连贯的整数值。

  • **[]**匹配指定范围内或者属于方括号所指定的集合中的任意单个字符;
    **_**匹配一个字符;
    **[^]**匹配不在方括号之间指定的范围或集合内的任何单个字符;
    **%**匹配包含零个或多个字符的任意字符串。

  • SQL Server提供了两种开窗函数:排名开窗函数和聚合开窗函数。PARTITION BY:将结果集划分为多个分区,OVER子句用于确定在应用关联的开窗函数之前对行集的分区和排序。

  • 外连接是SQL语句多表连接查询方法之一,包括左外连接(left join或left outer join)、右外连接(right join或right outer join)、完全外连接(full join或full outer join)。

uml与数据库应用系统

  • 在UML图中,用于表达系统中不同的包、命名空间或不同的顶目间彼此关系的图称为包图
  • **部署图又叫配置图,**描述系统中硬件和软件的物理配置情况和系统体系结构。
  • 用例之间存在关系,包括扩展、使用、组合。扩展和使用是继承关系,即通用化关系的另一种体现形式。组合则是把相关的用例打成包,当作一个整体看待。
  • 活动图主要用于描述系统、用例和程序模块中逻辑流程的先后执行次序,并行次序。
  • 顺序图有两个坐标轴,纵向表示时间的持续过程,横向表示对象。每一个对象用矩形框表示,纵向的虚线表示对象在序列中的执行情况,称为对象的“生命线”。
  • 通信图是交互图的一种,也被称为协作图
  • 顺序图主要用于描述系统内对象之间的信息发送和接收序列

运行维护与优化

  • **物化(索引)**视图是一种包含查询结果的数据库对象,其数据不是在视图使用时读取的,而是预先计算好的。
  • 派生性冗余列是指表中增加的列由表中的一些数据项经过计算生成。它的作用是在查询时减少连接操作,避免使用聚合函数。
  • 存储方式中的聚集就是将经常一起使用的多个表中的数据行按照其公共列值存储在一起。
  • 增加冗余列是指在多个表中增加具有相同语义的列,它常用来在查询时避免连接操作,也称之为增加冗余属性。
  • 水平分割:union 垂直分割:join
  • 事务四大特征:原子性,一致性,隔离性和持久性。
    1.原子性:一个原子事务要么完整执行,要么干脆不执行。
    2.一致性:代表了底层数据存储的完整性。
    3.隔离性:事务必须在不干扰其他进程或事务的前提下独立执行。
    4.持久性:在某个事务的执行过程中,对数据所作的所有改动都必须在事务成功结束前保存至某种物理存储设备

数据库后台编程技术

  • 游标指针各个参数含义
    NEXT:返回紧跟在当前行之后的数据行,并且当前行递增为结果行。
    PRIOR:返回紧跟当前行前面的数据行,并且当前行递减为结果行。
    FIRST:返回游标中的第一行并将其作为当前行。
    LAST:返回游标中的最后一行并将其作为当前行
  • 在对游标数据进行提取的过程中,可以使用**@@FETCH_STATUS**全局变量判断数据提取的状态。由于@@FETCH_STATUS对于在一个连接上的所有游标是全局性的,不管是对哪个游标,只要执行一次TETCH语句,系统都会对@@FETCH_STATUS赋一次值,以表明该FETCH语句的执行情況。
  • 游标提取数据,命令动词是fetch
  • 关键字for/after定义后触发器,instead of定义前触发器。
  • 声明游标的语法是declare 游标名 cursor for select语句
  • 如果定义了default值,则在执行函数时可不指定此参数的值。如果希望在调用函数时使用参数的默认值,则必须指定关键字DEFAULT。
  • 这两张表是触发器执行时被自动创建的。deleted表用于存储delete和update语句所影响的行的副本;inserted表用于存储insert和update语句所影响的行的副本。

数据库分析与设计

  • 在数据文件的主码属性集上建立的索引称为主索引,在数据文件的非主属性上建立的索引称为辅索引
  • 如果数据文件中的每个查找码值在索引文件中都对应一个索引记录,则称该索引为稠密索引
  • 如果只是一部分查找码的值有对应的索引记录,则被称为稀疏索引
  • ​ 如果数据文件中数据记录的排列顺序和索引文件中对应索引码的排列顺序-致,则称这种索引为聚集索引,否则称为非聚集索引
  • 一个非确定联系又称为"多对多关系"或m:n联系。
  • 数据库中文件结构有:索引文件、顺序文件、堆文件、散列文件和聚集文件。
  • 如果一个数据库中的一个基本表中的数据量很少,并且插入、删除、更新等操作非常频繁,该基本表可以采用堆文件组织方式。
  • DBAS需求分析阶段的另外一项重要工作是分析DBAS应具有的性能指标,主要包括:
    (1)数据操作响应时间,或数据访问响应时间;
    (2)系统吞吐量;
    (3)允许并发访问的最大用户数;
    (4)每TPS代价值。
  • DFD方法由四种基本元素(模型对象)组成:数据流、处理、数据存储和外部项。
  • 外部项描述系统数据的提供者或数据的使用者。
  • IDEF1X数据建模方法中,如果一个实体集的每个实例都能被唯一地标识而不决定于它与其他实体集的联系,则被称为独立实体集;如果依赖于与其他实体集的联系,则被称为从属实体集
  • 3
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
部分内容如下所示 1.假定网络中的路由器B的路由表有如下的项目(这三列分别表示“目的网络”、“距离”和“下一跳路由器”) N1 7 A, N2 2 C N6 8 F, N8 4 E N9 4 F 现在B收到从C发来的路由信息(这两列分别表示“目的网络”“距离”): N2 4, N3 8, N6 4 N8 3, N9 5 试求出路由器B更新后的路由表(详细说明每一个步骤)。 答:路由器B更新后的路由表如下: N1   7  A    无新信息,不改变 N2   5  C    相同的下一跳,更新 N3   9  C    新的项目,添加进来 N6   5  C    不同的下一跳,距离更短,更新 N8   4  E    不同的下一跳,距离一样,不改变 N9   4  F    不同的下一跳,距离更大,不改变 2.假定网络中的路由器A的路由表有如下的项目(格式同上题): N1 4 B, N2 2 C N3 1 F, N4 5 G 现将A收到从C发来的路由信息(格式同上题): N1 2 N2 1 N3 3 N4 7 试求出路由器A更新后的路由表(详细说明每一个步骤)。 答: 路由器A更新后的路由表如下: N1   3  C    不同的下一跳,距离更短,改变 N2   2  C    不同的下一跳,距离一样,不变 N3   1  F    不同的下一跳,距离更大,不改变 N4   5  G    无新信息,不改变 3.某单位分配到一个地址块136.23.12.64/26。现在需要进一步划分为4个一样大的子网。试问: (1)每一个子网的网络前缀有多长? (2)每一个子网中有多少个地址? (3)每一个子网的地址是什么? (4)每一个子网可分配给主机使用的最小地址和最大地址是什么? (1)每个子网前缀28位。 (2)每个子网的地址中有4位留给主机用,因此共有16个地址。 (3)四个子网的地址块是: 第一个地址块136.23.12.64/28,可分配给主机使用的 最小地址:136.23.12.01000001=136.23.12.65/28 最大地址:136.23.12.01001110=136.23.12.78/28 第二个地址块136.23.12.80/28,可分配给主机使用的 最小地址:136.23.12.01010001=136.23.12.81/28 最大地址:136.23.12.01011110=136.23.12.94/28 第三个地址块136.23.12.96/28,可分配给主机使用的 最小地址:136.23.12.01100001=136.23.12.97/28 最大地址:136.23.12.01101110=136.23.12.110/28 第四个地址块136.23.12.112/28,可分配给主机使用的 最小地址:136.23.12.01110001=136.23.12.113/28 最大地址:136.23.12.01111110=136.23.12.126/28
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值