可以
只要计算机打开着,CPU 一定都在不停处理进程。在 Windows 系统下至少 rundll32.exe 这个程序是持续运行的。在 Linux 下 kernel 也是会持续运行的。运行进程个数为零的时候有没有呢?有,那就是计算机关机的时候。
不是,驱动程序是另外安装的软件,是操作系统控制并且和硬件之间通讯的桥梁(程序)
请求中断 → 响应中断 → 关闭中断 → 保留断点 → 中断源识别 → 保护现场 → 中断服务子程序 → 恢复现场 → 中断返回
MMU 是 Memory Management Unit 的缩写,中文名是内存管理单元,它是中央处理器(CPU)中用来
多线程效率,我认为未必会高,而且有时候相反会低。
多线程并不是为了提高效率,而是不必等待,可以并行执行多条数据。
中断是计算机系统结构一个重要的组成部分。在中断机制中的硬件部分(中断装置)的作用就是在 CPU 每执行完一条指令后,判别是否有事件发生。如果没有事件发生,CPU继续执行;若有事件发生,中断装置①中断原先占用 CPU 的程序的执行,②把被中断程序的断点保存起来,③让操作系统的处理服务程序占用 CPU 对事件进行处理,④处理完后,再让被中断的程序继续占用 CPU 执行下去。
因为 DMA 请求得不到及时响应,I/O 传输数据可能会丢失。
虚拟存储区的容量与物理主存大小无关,而受限于计算机的地址结构和可用磁盘容量。
两者在计算机硬件连接、系统拓朴结构和通信控制等方面基本都是一样的,它们都具有通信和资源共享的功能。
区别关键在于:
但是,信息的传输速率“比特/秒”与码元的传输速率“波特”在数量上却有一定的关系。
everything over IP: everything 均以 IP 为基础,以后的网络中的设备都用 IP(现在的电话网络就不是)。【over:以…为基础】
IP over everything: 在现在的电通信网过渡到光通信网的过程中,IP、ATM、WDM 会配合使用,渐渐过渡,即是 IP over everything。【over:凌驾于…之上】
若传输的数据量很大,而且传送时间远大于呼叫时间,则采用电路交换较为合适;当端到端的通路有很多段链路组成时,采用分组交换较为合适。从提高整个网络的信道利用率上看,分组交换优于电路交换。
注:报文交换是以“报文”为单位的,分组交换是以“分组”为单位的,所以速度快。
IPv6具有更大的地址空间。IPv4中规定IP地址长度为 32 bit,最大地址个数为232;而IPv6中IP地址的长度为 128 bit,即最大地址个数为2128。与32位地址空间相比,其地址空间增加了2128 / 232 = 296个。
IPv6使用更小的路由表。IPv6的地址分配一开始就遵循聚类(Aggregation)的原则,这使得路由器能在路由表中用一条记录(Entry)表示一片子网,大大减小了路由器中路由表的长度,提高了路由器转发数据包的速度。
IPv6增加了增强的 组播(Multicast)支持 以及对流的控制(Flow Control),这使得网络上的多媒体应用有了长足发展的机会,为服务质量(QoS,Quality of Service)控制提供了良好的网络平台。
IPv6加入了对 自动配置(Auto Configuration) 的支持。这是对DHCP协议的改进和扩展,使得网络(尤其是局域网)的管理更加方便和快捷。
IPv6具有更高的安全性。在使用IPv6网络中用户可以对网络层的数据进行加密并对IP报文进行校验,在IPV6中的加密与鉴别选项提供了分组的保密性与完整性。极大的增强了网络的安全性。
允许扩充。如果新的技术或应用需要时,IPV6允许协议进行扩充。
更好的头部格式。IPV6使用新的头部格式,其选项与基本头部分开,如果需要,可将选项插入到基本头部与上层数据之间。这就简化和加速了路由选择过程,因为大多数的选项不需要由路由选择。
新的选项。IPV6有一些新的选项来实现附加的功能。
P2P(对等网络,是一种有别于传统 C/S 客户/服务器式的分布式网络)直接将人们联系起来,让人们通过互联网直接交互。P2P 模型的思想是整个网络中的传输内容不再被保存在中心服务器上,每个节点都同时具有下载、上传的功能,其权利和义务都是大体对等的。P2P 使得网络上的沟通变得容易、更直接共享和交互,真正地消除中间商。P2P 就是人可以直接连接到其他用户的计算机、交换文件,而不是像过去那样连接到服务器去浏览与下载。
在数字通信中常常用时间间隔相同的符号来表示一位二进制数字。这样的时间间隔内的信号称为二进制码元,而这个间隔被称为码元长度。
局域网、城域网、广域网和互联网四种
物理层:中继器(Repeater)和集线器(Hub)。用于连接物理特性相同的网段,这些网段,只是位置不同而已。Hub 的端口没有物理和逻辑地址。
逻辑链路层:网桥(Bridge)和交换机(Switch)。用于连接同一逻辑网络中、物理层规范不同的网段,这些网段的拓扑结构和其上的数据帧格式,都可以不同。Bridge和Switch的端口具有物理地址,但没有逻辑地址。
网络层:路由器(Router)。用于连接不同的逻辑网络。Router的每一个端口都有唯一的物理地址和逻辑地址。
应用层:网关(Gateway)。用于互连网络上,使用不同协议的应用程序之间的数据通信,目前尚无硬件产品。
中继器与集线器的区别:区别在于集线器能够提供多端口服务,也称为多口中继器。
网桥:数据链路层, 网桥(Bridge)像一个聪明的中继器, 网桥是一种对帧进行转发的技术,根据 MAC 分区块,可隔离碰撞。网桥将网络的多个网段在数据链路层连接起来。【将两个LAN连起来,根据MAC地址来转发帧,可以看作一个“低层的路由器”。】
交换机:数据链路层,是一种基于MAC地址识别,能完成封装转发数据包功能的网络设备。可以理解为高级的网桥,他有网桥的功能,但性能比网桥强。交换机和网桥的细微差别就在于:交换机常常用来连接独立的计算机,而网桥连接的目标是 LAN,所以交换机的端口较网桥多。
路由器:网络层,用于连接多个逻辑上分开的网络,几个使用不同协议和体系结构的网络;具有判断网络地址和选择路径的功能,过滤和分隔网络信息流。路由器的主要工作就是为经过路由器的每个IP数据包寻找一条最佳传输路径,并将该数据有效地传送到目的站点。 路由器的基本功能是,把数据(IP报文)传送到正确的网络。
网关:网关(Gateway)又称网间连接器、协议转换器。网关在网络层以上实现网络互连,是最复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关既可以用于广域网互连,也可以用于局域网互连。 通过字面意思解释就是网络的关口。从技术角度来解释,就是连接两个不同网络的接口,比如局域网的共享上网服务器就是局域网和广域网的接口。
来源:中继器、集线器、网桥、交换机、路由器、网关的超全总结
TCP建立连接,也就是我们常说的三次握手,它需要三步完成。在TCP的三次握手中,发送第一个SYN的一端执行的是主动打开。而接收这个SYN并发回下一个SYN的另一端执行的是被动打开。
注:该步骤ack表示需要客户端发送第x+1个字节了
如果服务器没有收到客服端的ACK,会超时重传自己的SYN请求,一直到收到服务端的ACK为止
ARP 协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的 MAC 地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的 MAC 地址。但这个目标 MAC 地址是如何获得的呢?它就是通过地址解析协议 ARP 获得的。所谓“地址解析”就是主机在发送帧前将目标 IP 地址转换成目标 MAC 地址的过程。 ARP 协议的基本功能就是通过目标设备的 IP 地址,查询目标设备的 MAC 地址,以保证通信的顺利进行。
ARP(AddressResolutionProtocol)是地址解析协议,是一种将IP地址转化成物理地址的协议。从IP地址到物理地址的映射有两种方式:表格方式和非表格方式。ARP具体说来就是将网络层(IP层,也就是相当于OSI的第三层)地址解析为数据连接层(MAC层,也就是相当于OSI的第二层)的MAC地址。
在局域网中,当主机或其它网络设备有数据要发送给另一个主机或设备时,它必须知道对方的网络层地址(即IP地址)。但是仅仅有IP地址是不够的,因为IP数据报文必须封装成帧才能通过物理网络发送,因此发送站还必须有接收站的物理地址,所以需要一个从IP地址到物理地址的映射。APR就是实现这个功能的协议。
假设主机A和B在同一个网段,主机A要向主机B发送信息。具体的地址解析过程如下
(1)主机A首先查看自己的ARP表,确定其中是否包含有主机B对应的ARP表项。如果找到了对应的MAC地址,则主机A直接利用ARP表中的MAC地址,对IP数据包进行帧封装,并将数据包发送给主机B。
(2)如果主机A在ARP表中找不到对应的MAC地址,则将缓存该数据报文,然后以广播方式发送一个ARP请求报文。ARP请求报文中的发送端IP地址和发送端MAC地址为主机A的IP地址和MAC地址,目标IP地址和目标MAC地址为主机B的IP地址和全0的MAC地址。由于ARP请求报文以广播方式发送,该网段上的所有主机都可以接收到该请求,但只有被请求的主机(即主机B)会对该请求进行处理。
(3)主机B比较自己的IP地址和ARP请求报文中的目标IP地址,当两者相同时进行如下处理:将ARP请求报文中的发送端(即主机A)的IP地址和MAC地址存入自己的ARP表中。之后以单播方式发送ARP响应报文给主机A,其中包含了自己的MAC地址。
(4)主机A收到ARP响应报文后,将主机B的MAC地址加入到自己的ARP表中以用于后续报文的转发,同时将IP数据包进行封装后发送出去。
当主机A和主机B不在同一网段时,主机A就会先向网关发出ARP请求,ARP请求报文中的目标IP地址为网关的IP地址。当主机A从收到的响应报文中获得网关的MAC地址后,将报文封装并发给网关。如果网关没有主机B的ARP表项,网关会广播ARP请求,目标IP地址为主机B的IP地址,当网关从收到的响应报文中获得主机B的MAC地址后,就可以将报文发给主机B;如果网关已经有主机B的ARP表项,网关直接把报文发给主机B。
点到点协议(Point to Point Protocol,PPP)是为在同等单元之间传输数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共通的解决方案。PPP具有以下功能:
(1)PPP具有动态分配 IP 地址的能力,允许在连接时刻协商IP地址;
(2)PPP支持多种网络协议,比如TCP/IP 、NetBEUI 、NWLINK 等;
(3)PPP具有错误检测能力,但不具备纠错能力,所以ppp是不可靠传输协议;
(4)无重传的机制,网络开销小,速度快。
(5)PPP具有身份验证功能。
(6) PPP可以用于多种类型的物理介质上,包括串口线、电话线、移动电话和光纤(例如SDH),PPP也用于Internet接入。
点对点 | 端到端 |
---|---|
点对点是基于MAC地址或者IP地址,是指一个设备发数据给另外一个设备,这些设备是指直连设备包括网卡,路由器,交换机。 | 端对端是网络连接,应用程序之间的远程通信。端对端不需要知道底层是如何传输的,是一条逻辑链路。 |
发送端把数据传给与它直接相连的设备,这台设备在合适的时候又把数据传给与之直接相连的下一台设备,通过一台一台直接相连的设备,把数据传到接收端。 | 在数据传输前,经过各种各样的交换设备,在两端设备问建立一条链路,就像它们是直接相连的一样,链路建立后,发送端就可以发送数据,直至数据发送完毕,接收端确认接收成功。 |
点对点,是说两台主机(终端)在局域网中传输 | 端对端,主要服务于Application Layer,是说两台主机(终端),跨过网络直接连接 |
优点是发送端设备送出数据后,它的任务已经完成,不需要参与整个传输过程;另外,即使接收端设备关机或故障,点到点传输也可以采用存储转发技术进行缓冲。 | 优点是链路建立后,发送端知道接收设备一定能收到,而且经过中间交换设备时不需要进行存储转发 |
缺点是发送端发出数据后,不知道接收端能否收到或何时能收到数据。 | 缺点是直到接收端收到数据为止,发送端的设备一直要参与传输。 |
TCP与UDP都是传输层协议,且都用端口号标识数据所达的进程。
TCP | UDP |
---|---|
面向连接服务 | 无连接服务 |
可靠交付(确认和重传机制) | 不可靠交付 |
流量控制、拥塞控制 | 无确认机制 |
用于可靠性要求高的场合,如:SMTP,FTP,HTTP等 | 用于即时性强的场合,如:视频聊天,语音电话等 |
- TCP面向连接的,传输数据时,需先进行三次握手,建立连接,UDP是无连接的,发送数据之前不需要建立连接
- TCP通过确认和重传机制,提供可靠的服务。即通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达,而UDP不保证可靠传输,只是尽可能得交付
- TCP面向字节流,即将数据看成一连串无结构的字节流。UDP是面向报文的,UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如IP电话,实时视频会议等)
- 每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信
- TCP的逻辑通信信道是全双工的可靠信道,UDP则是不可靠信道
层 | 传输单位 | 任务 | 功能 | 设备 | 协议 |
---|---|---|---|---|---|
物理层 | 比特 | 透明地传输比特流 | 为数据端设备提供传送数据通路 | 集线器 中继器 | |
数据链路层 | 帧 | 将网络层传下来的IP数据报组成帧 | ① 链路的建立,拆除,分离; ② 帧定界和帧同步 ③ 差错检测 |
交换机 网桥 | PPP、HDLC、ARQ |
网络层 | 数据包 | ①将传输层传下来的报文段封装成分组 ②选择适当的路由,使传输层传下来的分组能够交付到目标主机 |
为传输层提供服务; 组包和拆包; 路由选择; 拥塞控制。 |
路由器 | ICMP ARP RARP IP IGMP |
传输层 | 报文段 TCP,UDP | 负责主机两个进程之间的通信 | 为端到端提供可靠的传输服务; 为端到端连接提供流量控制、差错控制、服务质量等管理服务。 |
TCP UDP | |
会话层 表示层 应用层 | 应用层 | 提供系统与用户的接口 | 文件传输; 访问和管理; 电子邮件服务。 |
FTP、SMTP POP3、HTTP DHCP、RIP、BGP |
来源:计算机面试(考研复试)问题整理
安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性和计算机系统的安全性,包括操作系统,网络系统的安全性是紧密联系、相互支持的。
主键不能为空而唯一可以为空,相同点就是都不允许重复。
GROUP BY
和表连接生成的视图不能更新表是实实在在的保存数据的实体,写入的数据都保存在表中;而视图是不保存数据的,也没有数据。目的:提供多种存储路径,加快查找速度。
建立索引需要考虑的问题:
(1)简单视图
就是由一个表生成出来的视图,这种情况你更新它就和更新表一样
(2)二次加工出来的简单视图
仍然是一个表出来的视图,但是视图中存在通过函数或计算二次加工出来的其他字段。更新
的时候只要不更新这些加工出来的字段也是可以更新的。
(3)组合视图
通过表之间关联联合等出来的复杂视图。这种视图更新的时候要注意你所更新的列要来自同
一个表,也是可以更新的。
(4)静态视图
这种视图等同于表可以直接更新,但是更新的数据尽在视图中反映出来,不反映到原表
(5)其他视图
通过表函数等其他生成的更为复杂的视图。一般不可更新
完整性和安全性是两个不同的概念。前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出造成的无效操作和错误结果,而后者是防止数据库被恶意的破坏和非法的存取。当然,完整性和安全性是密切相关的。特别是从系统实现的方法来看,某一种机制常常既可以用于安全保护亦可用于完整性保证。
DBA 负责全面管理和控制数据库系统,其职责有:
完整性约束可确保数据库中的数据正确性和相容性,主要包括:实体完整性、参照完整性、用户自定义完整性。
常用的是层次模型,网状模型和关系模型(最重要)。新兴的是面向对象数据模型和对象关系数据模型。
网状模型的数据结构主要有以下两个特征:
(1)允许一个以上的节点无双亲。
(2)一个节点可以有多于一个的双亲。
现实世界的实体以及实体间的各种联系均用关系来表示,从用户角度看,关系模型中数据的逻辑结构是一张二维表。
① 数据定义语言(Data Definition Language);
② 查询语言(Query Language);
③ 数据操纵语言(Data Manipulation Language);
④ 数据控制语言(Data Control Language)
数据操纵语言 DML(Data Manipulation Language),用户通过它可以实现对数据库的基本操作。例如,对表中数据的查询(select)、插入(insert)、删除(delete)和修改(update)
大概知道的有:
桌面型:Access、Foxpro、DBase
企业型:SQL Server 系列、MySQL、Oracle、Sybase
非关系型数据库:Nosql
数据独立性表示应用程序与数据库中存储的数据不存在依赖关系,包括逻辑数据独立性和物理数据独立性。
逻辑数据独立性指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,应用程序不用改变。
例:增加一个字段,应用程序不用改变
是指当数据库的模式发生改变时,只需要改变存在于外模式和概念模式之间的映射转换,无需改变外模式或应用程序。
物理数据独立性指用户的应用程序与数据库中数据的物理存储是相互独立的。当数据的物理存储改变了,应用程序不用改变。
例:本来是一行行存放数据,现在是一列列存放数据,但应用程序可以不变 或者 本来是用B树建索引 后来使用hash建索引
是指当数据库的内模式发生改变时,系统只要改变概念模式和内模式之间的映射转换,而不必改变模式,从而不需要更改外模式。
数据模式是基于选定的数据模型对数据进行的“型”的方面的刻画,而相应的“实例”则是对数据“值”的方面的描述。先有数据模型,才能据其讨论相应数据模式,有了数据模式,就能依据该模式得到相应的实例。
关系模型中常用的关系操作包括两大部分:
查询的表达能力是其中最主要的部分。
关系操作的特点是集合操作方式,即 操作的对象和结果都是集合。这种操作方式也称为 一次一集合(set-at-a-time) 的方式。相应地,非关系数据模型的数据操作方式则为 一次一记录(record-at-a-time) 的方式
所谓两段锁协议是指所有事务必须分两个阶段对数据项加锁和解锁:
所谓“两段”锁的含义是,事务分为两个阶段,第一阶段是获得封锁,也称为扩展阶段。
在这阶段,事务可以申请获得任何数据项上的任何类型的锁,但是不能释放任何锁。第二阶段是释放封锁,也称为收缩阶段。在这阶段,事务可以释放任何数据项上的任何类型的锁,但是不能再申请任何锁。
例如事务 T1 遵守两段锁协议,其封锁序列是:(如右)
又如事务 T2 不遵守两段锁协议,其封锁序列是:
Slock A … Unlock A … Slock B … Xlock C … Unlock C … Unlock B;
可以证明,若并发执行的所有事务均遵守两段锁协议,则对这些事务的任何并发调度策略都是可串行化的。
另外要注意两段锁协议和防止死锁的一次封锁法的异同之处。一次封锁法要求每个事务必须一次将所有要使用的数据全部加锁,否则就不能继续执行,因此一次封锁法遵守两段锁协议;但是两段锁协议并不要求事务必须一次将所有要使用的数据全部加锁,因此遵守两段锁协议的事务可能发生死锁
事务的概念:用户定义的一个数据库操作序列,这些操作要么全做要么全不做,是一个不可分割的工作单位。
1. 一致性(Consistency)
2. 原子性(Atomicity)
3. 隔离性(Isolation)
4. 持续性(Durability)
1、事务内部的故障 2、系统故障 3。介质故障 4。计算机病毒
1、模式又称概念模式或逻辑模式,对应于概念级,是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的公共数据视图(全局视图),反映了数据库系统的整体观。
2、外模式又称子模式或用户模式,对应于用户级。它是某个或某几个用户所看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示。外模式是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。外模式反映了数据库的用户观。
3、内模式又称存储模式,对应于物理级,它是数据库中全体数据的内部表示或底层描述,是数据库最低一级的逻辑描述,它描述了数据在存储介质上的存储方式和物理结构,对应着实际存储在外存储介质上的数据库。内模式是数据库的存储观。在一个数据库系统中,只有唯一的数据库,因而作为定义、描述数据库存储结构的内模式和定义、描述数据库逻辑结构的模式,也是唯一的,但建立在数据库系统之上的应用则是非常广泛、多样的,所以对应的外模式不是唯一的,也不可能是唯一的。
表是实实在在得保存数据的实体,写入的数据都保存在表中,而视图是不保存数据的,也没有数据。视图就是一条语句,实际上视图从表中取数据。只是给我们的感觉好像直接从表中取得一样。表可以建立各种触发器,可以建立索引,可以建立主健,约束等。但是视图不能建立这些对象(视图可以建立替代触发器)。表和视图可以更新,但是视图的更新受到约束。比如,GROUP BY 和表连接生成的视图不能更新表是实实在在的保存数据的实体,写入的数据都保存在表中,而视图是不保存数据的,也没有数据。
联系:可以理解为视图的数据都是从表中取出来,视图就是你定下的一个框框而已,内容都是在表中。
① 简化用户操作;
② 使用户能以多种角度看待统一数据;
③ 对重构数据库提供了一定程度的逻辑独立性;
④ 对机密数据提供安全保护;
⑤ 可以更清晰的表达查询。
数据模型是一组严格定义的概念的集合,这些概念精确地描述了系统的静态特征(数据结构)、动态特征(数据操作)和完整性约束条件,这就是数据模型的三要素。
目的:提供多种存储路径,加快查找速度。建立索引需要考虑的问题:1。没有查询、统计的需要则不建 2。数据增删改频繁,系统会花费许多时间来维护索引,从而降低了查询效率。
行列子集视图可以更新;
① 由两个以上基本表导出的视图,不可以更新;
② 字段来自于字段表达式或常数的视图,不允许(Insert、Update),但是可以 Delete;
③ 字段来自聚集函数的视图不可以更新;
④ 定义中含有 Group By 字句的视图,不可以更新;
⑤ 定义中含有 DISTINCT 字句的视图,不可以更新;
⑥ 定义中有嵌套查询,并且内层查询的 From 字句中涉及的表也是导出该视图的基本表
的视图,不可以更新;
⑦ 不允许更新的视图上定义的视图也不允许更新。
日志文件是用来记录事务对数据库的更新操作的文件。
作用:在数据库恢复中起着重要的作用。并协助后备副本进行介质故障恢复。
日志文件主要包含:事务标识、操作的类型、操作对象、更新前数据的旧值、更新后数据的新值。
完整性和安全性是两个不同的概念。前者是为了防止数据库中存在不符合语义的数据,防止错误信息的输入和输出造成的无效操作和错误结果, 而后者是防止数据库被恶意的破坏和非法的存取。当然,完整性和安全性是密切相关的。特别是从系统实现的方法来看,某一种机制常常既可以用于安全保护亦可用于完整性保证。
完全备份、事务日志备份、差异备份、文件备份。
① 数据库定义和创建;
② 数据组织、存储和管理;
③ 数据存取;
④ 数据库事务管理和运行管理;
⑤ 数据库的建立和维护。
并发控制:封锁、时间戳、乐观控制法。
安全性问题不是数据库系统所独有的,所有计算机系统都有这个问题。只是在数据库系统中大量数据集中存放,而且为许多最终用户直接共享,从而使安全性问题更为突出。系统安全保护措施是否有效是数据库系统的主要指标之一。数据库的安全性和计算机系统的安全性,包括操作系统,网络系统的安全性是紧密联系,相互支持的。
– 实例化不同。
– 防止不合语意的数据,防止无效操作和错误结果
物理独立性指的是应用程序与数据存放在相互独立的磁盘地址,内模式与模式映象保证了其物理独立特性;
逻辑独立性指的数据与程序逻辑结构上的独立特性,数据或应用程序的逻辑结构发生变化性都不影响对方,外模式与模式映身保证了其逻辑独立性。
逻辑数据独立性指用户的应用程序与数据库的逻辑结构是相互独立的。数据的逻辑结构改变了,应用程序不用改变。
例:增加一个字段,应用程序不用改变
是指当数据库的模式发生改变时,只需要改变存在于外模式和概念模式之间的映射转换,无需改变外模式或应用程序。
物理数据独立性指用户的应用程序与数据库中数据的物理存储是相互独立的。当数据的物理存储改变了,应用程序不用改变。
例:本来是一行行存放数据,现在是一列列存放数据,但应用程序可以不变 或者 本来是用B树建索引 后来使用hash建索引
是指当数据库的内模式发生改变时,系统只要改变概念模式和内模式之间的映射转换,而不必改变模式,从而不需要更改外模式。
①数据的安全性保护;②数据的完整性检查;③并发控制;④数据库恢复。
DCL 是用来设置或更改数据库用户角色权限的语句,主要包括 GRANT(授权)、DENY
(拒绝)、REVOKE(删除)三类。
三模式→①外模式/模式映像;②模式/内模式映像;
保证了数据库系统中的数据能够具有较高的逻辑独立性和物理独立性。
在数学中,两个集合 X 和 Y 的笛卡儿积(Cartesian product),又称直积,表示为 X × Y,是其第一个对象是 X 的成员而第二个对象是 Y 的一个成员的所有可能的有序对。
区别:一个表可以定义多个唯一约束,但只能定义一个主键约束;空值的列上可以定义唯一约束,不能定义主键约束。